我使用Proguard来混淆我的代码,我需要保留每个第三方库,如:
<>之前保持类com.layer.**-dontwarn com.layer。* *-保持class com.twitter.**保持类android.support.**-保持类com.崩溃分析。** {*;}-dontwarn com.crashlytics。* *…之前每当我添加一个新的第三方库时,我需要检查它的包名并将其添加到我的proguard配置文件中,否则应用程序可能会崩溃。
我不能这样写规则吗?我不关心不是我的代码。
-keep class !(my.package.name.**)
-dontwarn !(my.package.name.**)
谢谢!
要在自己的包中保留除类以外的所有内容,您可以使用您已经指出的规则(不包括括号):
-keep class !my.package.name.** { *; }
这将隐式地保留其他所有内容。如果需要,您仍然可以为您的类添加额外的-keep规则。
-dontwarn的规则应该以类似的方式工作:-dontwarn !my.package.name.**,**
如果需要,也可以添加类似的-dontnote规则