java - ProGuard - 仅保持资源处于 Activity 状态

标签 java android proguard

如何使资源仅处于 Activity 状态并混淆方法名称和变量?

例如我想保留 R.layout.activity_main。

谢谢。

最佳答案

试试这个,

#Keep the R
-keepclassmembers class **.R$* {
    public static <fields>;
}

如果您正在寻找完整的 Android 应用程序,

-injars      bin/classes
-injars      libs
-outjars     bin/classes-processed.jar
-libraryjars /usr/local/java/android-sdk/platforms/android-9/android.jar

-dontpreverify
-repackageclasses ''
-allowaccessmodification
-optimizations !code/simplification/arithmetic
-keepattributes *Annotation*

-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider

-keep public class * extends android.view.View {
    public <init>(android.content.Context);
    public <init>(android.content.Context, android.util.AttributeSet);
    public <init>(android.content.Context, android.util.AttributeSet, int);
    public void set*(...);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet);
}

-keepclasseswithmembers class * {
    public <init>(android.content.Context, android.util.AttributeSet, int);
}

-keepclassmembers class * implements android.os.Parcelable {
    static android.os.Parcelable$Creator CREATOR;
}

-keepclassmembers class **.R$* {
    public static <fields>;
}

关于java - ProGuard - 仅保持资源处于 Activity 状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35899257/

相关文章:

java - 在我的 Websphere 服务器中安装的 EJB 无状态 bean 中获取主机和端口

java - 多个 dex 文件 - 转换为 Dalvik 格式失败 - 无法执行 dex

Android Debug Bridge (adb) 命令行工具存在于 $PATH 中,但在 linux 中为 "command not found"

android - 如何从命令行选择测试模板

java - 如何通过我的应用程序点击按钮调用最后调用的电话号码

android - 如何在构建 Android 应用程序的发布版本之前删除所有调试日志记录调用?

android - 当 Android Q 中的 minifyEnabled = true 时,具有数据绑定(bind)的 LiveData 不起作用

java - 如何让 ProGuard Maven 插件使用最新的 ProGuard 版本?

java - 为什么在 launchBillingFlow 之后没有调用 onPurchasesUpdated

java - 为什么当我按退出键时框架不关闭?