gpt4 book ai didi

android - 如何在android中添加r8规则?

转载 作者:行者123 更新时间:2023-12-05 00:11:11 31 4
gpt4 key购买 nike

我们如何在 android 项目中为依赖项添加 R8 规则,并从缩小和混淆中排除文件和包?

最佳答案

添加 R8 规则类似于 progurad 规则,但有些依赖我们不需要在 R8 中添加规则,可能在文档中提到。从 Android Studio 3.4 R8 开始,R8 是默认的代码收缩器。

中添加此行build.gradle 应用模块

 buildTypes {
release {
minifyEnabled true //Important step
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}

选择 proguard-rules.pro

Select proguard-rules.pro

添加规则以排除包或文件
-keep class com.xyz.model.** { *; }

上面的代码从 minifing 中排除了模型包,最好从 minifing 中排除您的网络 pojo 类。

如果您添加的任何依赖项有 proguard/R8 规则也添加它,注意:像 Retrofit 这样的库我们不需要在 R8 中添加它,它将在相应的 github 页面中提到
    -keepattributes *Annotation*
-keepclassmembers class * {
@org.greenrobot.eventbus.Subscribe <methods>;
}
-keep enum org.greenrobot.eventbus.ThreadMode { *; }

# Only required if you use AsyncExecutor
-keepclassmembers class * extends org.greenrobot.eventbus.util.ThrowableFailureEvent {
<init>(java.lang.Throwable);
}

上面的示例适用于绿色 bot proguard 规则。只需复制粘贴到您的 proguard-rules.pro 文件

供引用: https://www.youtube.com/watch?v=yduedsaxfDw

关于android - 如何在android中添加r8规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57766218/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com