android android-studio-2.0

Obtención de errores "EnclosingMethod" al compilar en Android Studio 2



android-studio-2.0 (4)

Estoy obteniendo los errores de compilación por debajo de cuando ejecuto la aplicación en Android Studio 2. Estos errores no aparecían cuando usaba la versión anterior de Android Studio.

Error:warning: Ignoring InnerClasses attribute for an anonymous inner class Error:(com.squareup.haha.guava.base.Joiner$1) that doesn''t come with an Error:associated EnclosingMethod attribute. This class was probably produced by a Error:compiler that did not target the modern .class file format. The recommended Error:solution is to recompile the class from source, using an up-to-date compiler Error:and without specifying any "-target" type options. The consequence of ignoring Error:this warning is that reflective operations on this class will incorrectly Error:indicate that it is *not* an inner class. Error:warning: Ignoring InnerClasses attribute for an anonymous inner class Error:(com.squareup.haha.guava.collect.Iterables$2) that doesn''t come with an Error:associated EnclosingMethod attribute. This class was probably produced by a Error:compiler that did not target the modern .class file format. The recommended Error:solution is to recompile the class from source, using an up-to-date compiler Error:and without specifying any "-target" type options. The consequence of ignoring Error:this warning is that reflective operations on this class will incorrectly Error:indicate that it is *not* an inner class. Error:warning: Ignoring InnerClasses attribute for an anonymous inner class Error:(com.squareup.haha.guava.collect.Iterables$3) that doesn''t come with an Error:associated EnclosingMethod attribute. This class was probably produced by a Error:compiler that did not target the modern .class file format. The recommended Error:solution is to recompile the class from source, using an up-to-date compiler Error:and without specifying any "-target" type options. The consequence of ignoring Error:this warning is that reflective operations on this class will incorrectly Error:indicate that it is *not* an inner class.

¿Cuáles son estos errores y cómo resolverlos? Además, el apk funciona bien y la aplicación también funciona perfectamente.


Actualización 2016/09/19

Esto se solucionó en LeakCanary 1.4, por lo que simplemente actualizarlo debería solucionarlo sin necesidad de meterse con una versión alternativa de haha .

debugCompile ''com.squareup.leakcanary:leakcanary-android:1.4''

Previamente

Estas advertencias son causadas por haha:2.0.2 , que es una dependencia de leakcanary-android:1.4-beta2 .

Está corregido en haha:2.0.3 , por lo que puede solucionarlo utilizando explícitamente la versión más nueva en sus dependencias. Agregue esta línea para cada sabor donde está agregando una dependencia de leakcanary . No necesita agregarlo para leakcanary-android-no-op , ya que no tiene dependencias.

debugCompile ''com.squareup.haha:haha:2.0.3''


Añadiendo

-keepattributes EnclosingMethod

el archivo de configuración de proguard (en mi caso, proguard.cfg ) parece haber solucionado esto.


Estaba recibiendo el mismo error. Parece que hubo algún problema con leakcanary (en mi caso). Intenté seguir los cambios en el archivo proguard.

-dontwarn com.squareup.haha.guava.** -dontwarn com.squareup.haha.perflib.** -dontwarn com.squareup.haha.trove.** -dontwarn com.squareup.leakcanary.** -keep class com.squareup.haha.** { *; } -keep class com.squareup.leakcanary.** { *; } # Marshmallow removed Notification.setLatestEventInfo() -dontwarn android.app.Notification

Ya no estoy recibiendo esos problemas. Aquí está el link