HMS 工具包转换(G+H,HMS API 1st)库(xmsadapter)无法导入

HMS Toolkit Conversion (G+H, HMS API 1st) Library (xmsadapter) Not Able to Import

我正在尝试使用 HMS Toolkit 将我的应用程序从 GMS 移植到 (G+H)。

使用 Toolkit Convertor 后,以下行在 import org.xms.f.auth.ExtensionAuth 上抛出 未解决的引用错误 要求定义 xms。这显然意味着 xmsadapter 文件(由 HMS Toolkit Convertor 生成)尚未导入。

如何修复此错误以在 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” minifyEnabled设置为true后显示“ClassNotFoundException”“NoSuchFieldException”“NoSuchMethodException”,配置如下XMS app/proguard-rules.pro:

中的混淆规则
-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