thread studio onpreexecute method implement hilos example ejemplo doinbackground create asynctask android gradle android-asynctask

android - studio - aplicación: dexDebug-EXCEPCIÓN DE NIVEL SUPERIOR INESPERADA-en AsyncTask



onpreexecute method in android (1)

OK, basado en el problema de Android dex: clase anidada + booleana final: com.android.dex.util.ExceptionWithContext , pensé que había algo mal con la clase interna que estoy creando para la tarea asincrónica. Entonces, lo que hice fue cambiar la declaración de clase de AsyncTask de privada a pública:

private class MyLoadWebView extends AsyncTask<String, Void, Void> { ..

a

public class MyInnerLoadWebView extends AsyncTask<String, Void, Void> { ..

¡¡¡¡Y funcionó!!!!

Todavía no sé por qué es esto, pero parece un error grave. ¿Algún comentario?

Oh, cómo odio este error.

Estoy recibiendo el temido error dexDebug, pero esta vez no tengo idea de cómo solucionarlo.

El error exacto es:

Information:Gradle tasks [:app:assembleDebug] :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE :app:checkDebugManifest :app:preReleaseBuild UP-TO-DATE :app:prepareComAndroidSupportAppcompatV72221Library UP-TO-DATE :app:prepareComAndroidSupportSupportV42300Library UP-TO-DATE :app:prepareDebugDependencies :app:compileDebugAidl UP-TO-DATE :app:compileDebugRenderscript UP-TO-DATE :app:generateDebugBuildConfig UP-TO-DATE :app:generateDebugAssets UP-TO-DATE :app:mergeDebugAssets UP-TO-DATE :app:generateDebugResValues UP-TO-DATE :app:generateDebugResources UP-TO-DATE :app:mergeDebugResources UP-TO-DATE :app:processDebugManifest UP-TO-DATE :app:processDebugResources UP-TO-DATE :app:generateDebugSources UP-TO-DATE :app:processDebugJavaRes UP-TO-DATE :app:compileDebugJavaWithJavac Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. :app:compileDebugNdk UP-TO-DATE :app:compileDebugSources :app:preDexDebug :app:dexDebug UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.util.ExceptionWithContext at com.android.dex.util.ExceptionWithContext.withContext(ExceptionWithContext.java:45) at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:369) at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.java:137) at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:93) at com.android.dx.command.dexer.Main.processClass(Main.java:729) at com.android.dx.command.dexer.Main.processFileBytes(Main.java:673) at com.android.dx.command.dexer.Main.access$300(Main.java:83) at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:602) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:170) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.processDirectory(ClassPathOpener.java:229) at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:158) at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) at com.android.dx.command.dexer.Main.processOne(Main.java:632) at com.android.dx.command.dexer.Main.processAllFiles(Main.java:510) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:280) at com.android.dx.command.dexer.Main.run(Main.java:246) at com.android.dx.command.dexer.Main.main(Main.java:215) at com.android.dx.command.Main.main(Main.java:106) Caused by: java.lang.NullPointerException at com.android.dx.cf.code.ConcreteMethod.<init>(ConcreteMethod.java:87) at com.android.dx.cf.code.ConcreteMethod.<init>(ConcreteMethod.java:75) at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:271) ... 24 more ...while processing <init> (Lcom/appzylabs/pratik/dailydeals/WebFragment;)V ...while processing com/appzylabs/pratik/dailydeals/WebFragment$1.class 1 error; aborting Error:Execution failed for task '':app:dexDebug''. > com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ''command ''C:/Program Files/Java/jdk1.7.0_71/bin/java.exe'''' finished with non-zero exit value 1 Information:BUILD FAILED Information:Total time: 16.398 secs Information:1 error Information:0 warnings Information:See complete output in console

Tengo solo dos dependencias y una aplicación bastante limpia. Como se detalla a continuación:

apply plugin: ''com.android.application'' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.appzylabs.pratik.dailydeals" minSdkVersion 8 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro'' } } } dependencies { compile fileTree(include: [''*.jar''], dir: ''libs'') compile ''com.android.support:appcompat-v7:22.2.1'' compile ''com.android.support:support-v4:23.0.0'' }

Estas son las cosas que he intentado solucionar, sin resultado alguno: 1) Incluí el jarrón para JSoup pero lo eliminé. No ayuda. 2) Agregué soporte multidex (multiDexEnabled true) AND android: name = "android.support.multidex.MultiDexApplication" en mi AndroidManifest.xml. Nada. 3) Hice una limpieza / compilación, y limpié los cachés y reinicié el estudio de android. De nuevo, nada.

Tenga en cuenta que esto está sucediendo ÚNICAMENTE cuando intento ejecutar una prueba asyncTask. Si comento esa línea, compila como un amuleto:

new MyLoadWebView().execute("");

¿Cual es el problema? ¿Puede alguien ayudar, por favor?