android - Injected view null with roboguice 3 when minifiedEnabled = true -
i using roboguice 3 in application , when minifiedenabled set false in debug mode working fine. if however, set minifiedenabled true injected views seem null:
nullpointerexception: attempt invoke virtual method 'void android.support.v4.view.viewpager.setadapter(android.support.v4.view.pageradapter)' on null object reference
my proguard config looks follows:
-dontobfuscate -dontoptimize -dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -dontskipnonpubliclibraryclassmembers -dontpreverify -verbose -dump class_files.txt -printseeds seeds.txt -printusage unused.txt -printmapping mapping.txt -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* -allowaccessmodification -renamesourcefileattribute sourcefile -keepattributes sourcefile,linenumbertable -repackageclasses '' -dontwarn rx.internal.** -dontwarn retrofit.appengine.urlfetchclient -dontwarn roboguice.** -dontwarn org.roboguice.** -dontwarn com.squareup.okhttp.** -dontwarn okio.** -dontwarn org.joda.convert.** -keepattributes *annotation* -keepattributes signature -keepattributes exceptions -keepattributes innerclasses -keep class roboguice.** -keep class com.google.inject.** { *; } -keep class javax.inject.** { *; } -keep class javax.annotation.** { *; } -keep class retrofit.** { *; } -keep class android.support.v7.** { *; } -keep interface android.support.v7.** { *; } -keep class android.support.v4.** { *; } -keep interface android.support.v4.** { *; } -keep class com.squareup.okhttp.** { *; } -keep public class * extends android.app.activity -keep public class * extends android.app.application -keep public class * extends android.app.service -keep public class * extends android.content.broadcastreceiver -keep public class * extends android.content.contentprovider -keep public class * extends android.app.backup.backupagenthelper -keep public class * extends android.preference.preference -keep public class com.android.vending.licensing.ilicensingservice -keep class com.google.inject.binder -keep class com.afollestad.materialdialogs.gravityenum -keep class org.rtschat.views.tab.slidingtablayout$tabcolorizer -dontnote com.android.vending.licensing.ilicensingservice -keepclassmembers class ** { public void onevent*(**); } -keepclassmembers class * { @com.google.inject.inject <init>(...); } -keepclassmembers class * { void *(**on*event); } -keepclasseswithmembers class * { @retrofit.http.* <methods>; } -keepclassmembers class * implements java.io.serializable { static final long serialversionuid; private static final java.io.objectstreamfield[] serialpersistentfields; private void writeobject(java.io.objectoutputstream); private void readobject(java.io.objectinputstream); java.lang.object writereplace(); java.lang.object readresolve(); } -keepclasseswithmembernames class * { native <methods>; } -keepclasseswithmembernames class * { public <init>(android.content.context, android.util.attributeset); } -keepclasseswithmembernames class * { public <init>(android.content.context, android.util.attributeset, int); } -keepclassmembers class **.r$* { public static <fields>; } -keepclassmembers enum * { public static **[] values(); public static ** valueof(java.lang.string); } -keep public class * { public protected *; } -keep class * implements android.os.parcelable { public static final android.os.parcelable$creator *; } -keep class sun.misc.unsafe { *; } -keep class com.google.gson.examples.android.model.** { *; }
i fix adding proguard conf:
-keepclassmembers class * { ... @com.google.inject.injectresource <init>(...); @com.google.inject.inject <fields>; @com.google.inject.injectview <fields>; }
Comments
Post a Comment