使用xUtils框架的ViewUtils模块后,能够成功混淆打包发布,但是在APK运行的时候,报异常崩溃
异常如下:
08-07 08:45:41.799: E/AndroidRuntime(23211): FATAL EXCEPTION: main
08-07 08:45:41.799: E/AndroidRuntime(23211): java.lang.NullPointerException
08-07 08:45:41.799: E/AndroidRuntime(23211): at com.qianyanshangwu.qianyanlife.me.Card_MyCardInfoActivity.a(Unknown Source)
08-07 08:45:41.799: E/AndroidRuntime(23211): at com.qianyanshangwu.qianyanlife.base.h.handleMessage(Unknown Source)
08-07 08:45:41.799: E/AndroidRuntime(23211): at android.os.Handler.dispatchMessage(Handler.java:99)
08-07 08:45:41.799: E/AndroidRuntime(23211): at android.os.Looper.loop(Looper.java:130)
08-07 08:45:41.799: E/AndroidRuntime(23211): at android.app.ActivityThread.main(ActivityThread.java:3683)
08-07 08:45:41.799: E/AndroidRuntime(23211): at java.lang.reflect.Method.invokeNative(Native Method)
08-07 08:45:41.799: E/AndroidRuntime(23211): at java.lang.reflect.Method.invoke(Method.java:507)
08-07 08:45:41.799: E/AndroidRuntime(23211): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:878)
08-07 08:45:41.799: E/AndroidRuntime(23211): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
08-07 08:45:41.799: E/AndroidRuntime(23211): at dalvik.system.NativeStart.main(Native Method)
在proguard.cfg文件中,我已经加了
# ------ XUtils框架 --------
-keep class * extends java.lang.annotation.Annotation { *; }
也是没有用,仍然报空指针异常,出现Unknown Source。
向大神们求一个解决方案啊!!!
------解决方案--------------------
annotation reflect 这些功能 在代码混淆时候 都会出现问题,
在有用到反射功能的地方也要保护起来, 你要仔细检查。