我们可以缩小所有类,但只用混淆器混淆一些类吗?

clo*_*lty 4 java obfuscation android proguard shrink

通常,使用 -keep 排除类可以防止类被混淆

然而,它也可以防止它被缩小。

是否可以定义一个 proguard-project.txt 来缩小所有类,除了那些用 -keep 排除的类,但也只混淆类的特定子集?

目的是使用 proguard 保持在 android 65k 方法限制以下,同时也仅在 APK 中混淆第一方代码。

谢谢

Eri*_*une 5

是的,您可以将修饰符添加allowshrinking-keep仅应用于混淆(和优化)步骤的选项中。例如:

-keep,allowshrinking class com.example.SomeClass
Run Code Online (Sandbox Code Playgroud)

如果指定的类在收缩步骤中未使用,则可以将其删除,否则,其名称将在混淆步骤中保留。