android studio build.gradle文件中配置了
minifyEnabled true
編譯出的apk會去掉項目中未使用的類和方法,導致某些反射調用報錯,jni call java 報錯。
如何保證特定的方法不被刪除
1、
proguard-project.txt混淆文件
添加
-keep 保證某些方法不被刪除
-keep class com.****.Util {
*;
}
2、
也可以在方法或者類上面加上@keep(這種方式未驗證)
proguard-project.txt混淆文件
-dontwarn android.support.annotation.Keep
#保留註解,如果不添加改行會導致我們的@Keep註解失效
-keepattributes *Annotation*
-keep @android.support.annotation.Keep class **
@keep
public class Test {
}