如标题所述:如何让 Proguard 对整个包进行keepclassmembers
?也可以删除带有 void
签名的方法。
最佳答案
保留给定包及其所有子包中所有类的所有类成员(字段和方法):
-keepclassmembers class mypackage.** { *; }
这包括 void 方法。只保留所有无效方法:
-keepclassmembers class mypackage.** { void *(...); }
但这些设置并不常见,因为保留所有类成员或所有 void 方法(甚至不保留所有类)似乎是一个非常随机的要求。
对于大多数配置,-keep
比-keepclassmembers
更合适,相关类通常只有public类(匹配public class
),相关类通常扩展特定类或接口(interface)(例如匹配 extends somepackage.SomeClass
),相关类成员通常是一组非常具体的公共(public)方法(例如 public setters,匹配 public void set *(***)
).
关于android - 如何让 Proguard 到达整个包的 `keepclassmembers`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16369374/