如何解决HMS 工具包转换G+H、HMS API 1st库xmsadapter无法导入
我正在尝试使用 HMS Toolkit 将我的应用从 GMS 移植到 (G+H)。
使用 Toolkit 转换器后,以下行在 import org.xms.f.auth.ExtensionAuth
上抛出一个未解决的引用错误,要求定义 xms。这显然意味着 xmsadapter 文件(由 HMS Toolkit Converter 生成)尚未导入。
如何修复此错误以在 import org.xms.f.auth.ExtensionAuth
上导入 .xms 文件?我觉得缺少依赖项?
解决方法
您也可以先检查您配置的混淆脚本。
使用添加 HMS API 政策生成的 XMS 代码会增加应用的大小。您可以通过在app/build.gradle文件中添加或修改以下配置来启用代码缩减功能:
android {
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),'proguard-rules.pro'
}
}
}
如果出现诸如“找不到...”、“NoClassDefFoundError”、“ClassNotFoundException”、等错误消息>"NoSuchFieldException",或者minifyEnabled设置为true后显示"NoSuchMethodException",在app/proguard-rules.pro中配置如下XMS混淆规则:
-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.hianalytics.android.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}
-keep class com.huawei.agconnect.**{*;}
-keep interface com.huawei.agconnect.**{*;}
-keep class com.huawei.hmf.**{*;}
-keep class com.google.android.gms.**{*;}
-keep interface com.google.android.gms.**{*;}
-keep class com.google.firebase.**{*;}
-keep interface com.google.firebase.**{*;}
-keep class org.xms.**{*;}
-keep interface org.xms.**{*;}
详情可参考此Docs。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。