ProGuard **通配符匹配类问题

时间:2015-11-17 22:12:01

标签: java android proguard android-proguard

我正在尝试为我的应用生成正确的proguard构建文件。

通过在线阅读ProGuard文档和各种示例,我得出结论:

keep class my.package.data.** { *;}

...将遍历模型中的所有子包及其子包等,查找所有类并保留其所有名称,字段和方法。

但是从调试输出中我可以看到子包中的类中的方法被混淆了。

对我来说甚至令人费解的是,在添加以上内容后添加:

keep class my.package.data.models.** { *;}

......方法没有混淆。

我的示例中的类位于my.package.data.models.user.User的包中。

问题:

我的印象是通配符**只能深入到一个子包中。

但是文档声明:**匹配类名的任何部分,可能包含任意数量的包分隔符。例如,* * .Test"匹配除roo​​t包之外的所有包中的所有Test类。或者," mypackage。**"匹配" mypackage"中的所有类并在其子包中。

哪个没有提到内部子包。我不知道我是否正确,但如果不是my.package.**,那么引用所有子包及其子等的正确方法是什么?

0 个答案:

没有答案