Android java.lang.AssertionError: java.lang.NoSuchMethodException – Proguard

Estoy recibiendo mi aplicación se estrelló con este error, en la versión liberada de la aplicación. Está funcionando bien en modo de depuración

Process: com.app, PID: 13162 java.lang.AssertionError: java.lang.NoSuchMethodException: <init> [interface twitter4j.conf.Configuration, interface twitter4j.ab] at twitter4j.n.<clinit>(Unknown Source) at com.app.activities.RegistrationActivity.g(Unknown Source) at com.app.activities.RegistrationActivity.onCreate(Unknown Source) at android.app.Activity.performCreate(Activity.java:6289) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758) at android.app.ActivityThread.access$900(ActivityThread.java:177) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5942) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) Caused by: java.lang.NoSuchMethodException: <init> [interface twitter4j.conf.Configuration, interface twitter4j.ab] at java.lang.Class.getConstructor(Class.java:531) at java.lang.Class.getDeclaredConstructor(Class.java:510) at twitter4j.n.<clinit>(Unknown Source) at com.app.activities.RegistrationActivity.g(Unknown Source) at com.app.activities.RegistrationActivity.onCreate(Unknown Source) at android.app.Activity.performCreate(Activity.java:6289) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758) at android.app.ActivityThread.access$900(ActivityThread.java:177) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:145) at android.app.ActivityThread.main(ActivityThread.java:5942) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) 

El error parece ser generado debido a archivo proguard

Aquí está el proguard-rules.pro como sigue –

 # Add project specific ProGuard rules here. # By default, the flags in this file are appended to flags specified # in /home/adisoft2/android/android-sdk-linux/tools/proguard/proguard-android.txt # You can edit the include path and order by changing the proguardFiles # directive in build.gradle. # # For more details, see # http://developer.android.com/guide/developing/tools/proguard.html # Add any project specific keep options here: # If your project uses WebView with JS, uncomment the following # and specify the fully qualified class name to the JavaScript interface # class: #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} #-injars bin/classes #-injars libs #-outjars bin/classes-processed.jar #-libraryjars /usr/local/java/android-sdk/platforms/android-9/android.jar -keep class twitter4j.conf.** -keep class twitter4j.TwitterImpl -keep class twitter4j.conf.PropertyConfigurationFactory -dontwarn com.squareup.okhttp.** -dontwarn com.google.appengine.api.urlfetch.** -dontwarn rx.** -dontwarn retrofit.** -keepattributes Signature -keepattributes *Annotation* -keep class com.squareup.okhttp.** { *; } -keep interface com.squareup.okhttp.** { *; } -keep class retrofit.** { *; } -keepclasseswithmembers class * { @retrofit.http.* <methods>; } -dontwarn twitter4j.** -dontwarn com.google.android.gms.** -dontwarn okio.** # This is a configuration file for ProGuard. # http://proguard.sourceforge.net/index.html#manual/usage.html -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose # Optimization is turned off by default. Dex does not like code run # through the ProGuard optimize and preverify steps (and performs some # of these optimizations on its own). -dontoptimize -dontpreverify # Note that if you want to enable optimization, you cannot just # include optimization flags in your own project configuration file; # instead you will need to point to the # "proguard-android-optimize.txt" file instead of this one from your # project.properties file. -keepattributes *Annotation* -keep public class com.google.vending.licensing.ILicensingService -keep public class com.android.vending.licensing.ILicensingService # For native methods, see http://proguard.sourceforge.net/manual/examples.html#native -keepclasseswithmembernames class * { native <methods>; } # keep setters in Views so that animations can still work. # see http://proguard.sourceforge.net/manual/examples.html#beans -keepclassmembers public class * extends android.view.View { void set*(***); *** get*(); } # We want to keep methods in Activity that could be used in the XML attribute onClick -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } # For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keepclassmembers class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator CREATOR; } -keepclassmembers class **.R$* { public static <fields>; } # The support library contains references to newer platform versions. # Don't warn about those in case this app is linking against an older # platform version. We know about them, and they are safe. -dontwarn android.support.** 

Por favor, hágamelo saber, ¿qué estoy haciendo mal, y cómo arreglarlo.

Añadir esto en proguard-rules.pro funcionó para mí.

 -keep class twitter4j.** { *; } 
  • Android twitter enviar seguir solicitud a un amigo
  • Protección de las claves de twitter en Android
  • ¿Qué tan seguro es tener clave de consumidor de twitter y secreto codificado en la aplicación android?
  • ¿Dónde puedo encontrar el código fuente para las aplicaciones de gmail, facebook y twitter para Android? ¿Son incluso de código abierto?
  • ¿Cuáles son los riesgos de exponer la clave no tan secreta? ¿Hay alguna solución?
  • Cómo compartir una aplicación de Android con facebook y twitter que está en esta aplicación
  • Twitter para Android como menú rápido de desplazamiento rápido
  • ¿Cómo salir del navegador de aplicaciones de Twitter en Android?
  • Conseguir 403 prohibido al usar Tejido de Twitter para obtener user_timeline
  • Cómo configurar un diseño de menú principal en Android?
  • No se puede establecer devolución de llamada al cargar la línea de tiempo del usuario con Fabric Twitter Kit en la aplicación de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.