MinifyEnabled true
useProguard true
在我的gradle中,我得到一个像这样的NullPointerException:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.jafari.farhad.ubazdIDcontroller/com.jafari.farhad.ubazdIDcontroller.LoginActivity}: java.lang.NullPointerException at androID.app.ActivityThread.performlaunchActivity(ActivityThread.java:2180) at androID.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) at androID.app.ActivityThread.access0(ActivityThread.java:141) at androID.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) at androID.os.Handler.dispatchMessage(Handler.java:99) at androID.os.Looper.loop(Looper.java:137) at androID.app.ActivityThread.main(ActivityThread.java:5041) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NullPointerException at com.jafari.farhad.ubazdIDcontroller.LoginActivity.onCreate(UnkNown Source) at androID.app.Activity.performCreate(Activity.java:5104) at androID.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) at androID.app.ActivityThread.performlaunchActivity(ActivityThread.java:2144) at androID.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) at androID.app.ActivityThread.access0(ActivityThread.java:141) at androID.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) at androID.os.Handler.dispatchMessage(Handler.java:99) at androID.os.Looper.loop(Looper.java:137) at androID.app.ActivityThread.main(ActivityThread.java:5041) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511) at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(Native Method)
Gradle是:
buildTypes { deBUG { MinifyEnabled false proguardfiles getDefaultProguardfile('proguard-androID.txt'),'proguard-rules.pro' } release { MinifyEnabled true useProguard true proguardfiles getDefaultProguardfile('proguard-androID.txt'),'proguard-rules.pro' }}
在通过StackOverflow阅读时,我发现了proguard-rules.pro文件的一些设置,如下所示:
-dontusemixedcaseclassnames -dontskipnonpubliclibraryclasses -verbose -dontoptimize -dontpreverify -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 ; } # 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 ; } -dontwarn androID.support.** # Understand the @Keep support annotation. -keep class androID.support.annotation.Keep -keep @androID.support.annotation.Keep class * {*;} -keepclasseswithmembers class * { @androID.support.annotation.Keep ; } -keepclasseswithmembers class * { @androID.support.annotation.Keep ; } -keepclasseswithmembers class * { @androID.support.annotation.Keep (...); }
当我取消MinifyEnabled everthing工作正常.
Thancks
-keep class com.jafari.farhad.ubazdIDcontroller.LoginActivity**
但这会导致Proguard忽略LoginActivity类,并且您的代码不会被混淆.
最好的方法是查看哪个元素已将此创建引入Proguard.
总结以上是内存溢出为你收集整理的android – Proguard导致崩溃全部内容,希望文章能够帮你解决android – Proguard导致崩溃所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)