我在ProGuard中看到,您可以指定在混淆时使用的名称字典(这些字典可以在字段/方法,类或包级别)。
有没有办法给它一个特别不混淆的名字列表?我尝试在字典中放一个!,但这似乎不起作用。作为一个上下文,我认为主要是不要将类名称混淆为r以避免与Android生成的R类冲突。
顺便说一下,值得查看ProGuard发行版中的示例词典(例子/词典/) - 最后两个真的让我笑了!
答案 0 :(得分:0)
-keep class com.company.package.SomeClass
答案 1 :(得分:0)
我在寻找同样的事情时偶然发现了这个问题。
这不回答核心问题,
但对于您的用例,将其添加到proguard-project.txt
应该足够了:
-keep public class **.R {
public *;
}
-keep public class **.R$* {
public *;
}
答案 2 :(得分:0)
ProGuard已经避免了字典之间的冲突或保留与否的冲突,因此您不需要任何特殊策略。如果您最终遇到冲突的类名,则可以将其报告为错误。