android studio 代碼壓縮

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 {

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章