我正在开发一个android应用程序,使用我自己的自定义框架/jar/SDK。假设SDK包名称为com.vrs.fm
,在这个主包中,有N个子包和类。由于历史原因,我的申请包是com.vrs.app
。
在我的自定义vrs
SDK上启用proguard时,我需要在com.vrs
包下保留类,所以我在下面添加了proguard规则。
-dontwarn com.vrs.**
-keep class com.vrs.** { *; }
这使我的应用程序代码也没有混淆。
现在我想知道是否有任何方法/规则,我可以混淆com.vrs.app
包下的类,但保持com.vrs.fm
下的类
您可以使用排除规则来排除某些子包的保留:
-keep class !com.vrs.app.**, com.vrs.** { *; }
如果com.vrs.app中的某些部分仍然需要显式保存,那么您可以根据需要添加额外的keep规则,如下所示:
-keep class com.vrs.app.xxx.yyy { xxx; }