Proguard 未解析的类引用

2024-04-30

当使用 Proguard 构建 apk 时,我看到这些警告:

com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk$zza
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk$zza
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk$zza
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk$zza
com.google.android.gms.internal.zzaq: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzaq$1: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzaq$1: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzbd: can't find referenced class com.google.android.gms.internal.zzaqg
com.google.android.gms.internal.zzbd: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzbd: can't find referenced class com.google.android.gms.internal.zzzk
com.google.android.gms.internal.zzbd: can't find referenced class com.google.android.gms.internal.zzaqg
com.google.android.gms.internal.zzej: can't find referenced field 'int[] AdsAttrs' in program class com.google.android.gms.R$styleable
com.google.android.gms.internal.zzej: can't find referenced field 'int AdsAttrs_adSize' in program class com.google.android.gms.R$styleable
com.google.android.gms.internal.zzej: can't find referenced field 'int AdsAttrs_adSizes' in program class com.google.android.gms.R$styleable
com.google.android.gms.internal.zzej: can't find referenced field 'int AdsAttrs_adUnitId' in program class com.google.android.gms.R$styleable

我正在使用 Google Play Services 10.2.0,模块广告、ads-lite、分析、分析-impl、基础、地下室、驱动器、游戏、任务。

需要包含哪些模块或库来修复这些警告?


以此为基础thread https://stackoverflow.com/questions/18646899/proguard-cant-find-referenced-class-com-google-android-gms-r,如果你使用ProGuard,你需要保留一些GMS(Google Play Services)类并且它们被注释为@com.google.android.gms.common.annotation.KeepName.

您需要像编译一样忽略它,但您还需要保留该类,以便它可以在运行时找到它。

将这两行添加到您的 proguard 配置文件中:

-keep class com.google.android.gms.** { *; }
-dontwarn com.google.android.gms.**

您还可以查看这些相关的 SO 帖子:

  • 混淆器和错误 https://stackoverflow.com/questions/32596858/proguard-and-error
  • com.google.android.gms.internal.zzhu:找不到引用的类 android.security.NetworkSecurityPolicy https://stackoverflow.com/questions/32974025/com-google-android-gms-internal-zzhu-cant-find-referenced-class-android-securi
  • 如何在 ProGuard 中使用 -dontwarn? https://stackoverflow.com/questions/21123835/how-to-use-dontwarn-in-proguard
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Proguard 未解析的类引用 的相关文章

随机推荐