Android 库模块开启 isMinifyEnabled=true 时,R8 各自独立混淆, 将内部类重命名为 a.a / a.b 等短名打进 AAR;多个 AAR 合并到 App 时产生 Duplicate class 冲突。 修复:删除全部 7 个库模块 buildTypes.release 中的 isMinifyEnabled, 混淆由 App 的 R8 统一完成。将 proguard-rules.pro 中的保留规则 (manifest 注册类、反射调用入口、dontwarn)合并进各模块的 consumer-rules.pro 随 AAR 打包。 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
20 行
833 B
Prolog
20 行
833 B
Prolog
# BugCollect is accessed via reflection from sdk-webview — keep in consuming app
|
|
-keep class com.xuqm.sdk.bugcollect.BugCollect {
|
|
public *;
|
|
static <fields>;
|
|
}
|
|
-keep public class com.xuqm.sdk.bugcollect.LogLevel { public *; }
|
|
-keep public class com.xuqm.sdk.bugcollect.Breadcrumb { public *; }
|
|
-keep public class com.xuqm.sdk.bugcollect.FunnelTracker { public *; }
|
|
-keep public class com.xuqm.sdk.bugcollect.IssueEvent { *; }
|
|
-keep public class com.xuqm.sdk.bugcollect.LogEvent { *; }
|
|
|
|
# ContentProvider: class name referenced in AndroidManifest — must not be renamed
|
|
-keep class com.xuqm.sdk.bugcollect.internal.BugCollectInitProvider
|
|
|
|
-keepattributes *Annotation*, Signature, InnerClasses, EnclosingMethod
|
|
|
|
-keepclassmembers class com.xuqm.sdk.bugcollect.** {
|
|
@com.google.gson.annotations.SerializedName <fields>;
|
|
}
|