【AGC】集成AGC插件出现空指针报错问题

 【关键字】

性能管理、gradle、AGC

 

【问题描述】

开发者反馈应用集成了AGC 性能管理服务服务、HMS地图服务等SDK,遇到了一些编译问题。如果在Android Studio中单击运行按钮,则应用程序编译和安装正确,但当单击构建时,任务应用程序中的gradle构建过程失败:dexBuilderHMSdebug抛出空指针异常和其他错误,如下所述:

Caused by: org.gradle.workers.internal.DefaultWorkerExecutor$WorkExecutionException: A failure occurred while executing com.android.build.gradle.internal.dexing.DexWorkAction
Caused by: org.gradle.tooling.BuildException: Failed to process: D:\trabajos\delaware\sunarp-android\app\build\intermediates\transforms\APMSPlugin\hms\debug\127.jar
Caused by: com.android.builder.dexing.DexArchiveBuilderException: Failed to process: D:\trabajos\delaware\sunarp-android\app\build\intermediates\transforms\APMSPlugin\hms\debug\127.jar
Execution failed for task ':app:dexBuilderHmsDebug'.
> There was a failure while executing work items
   > A failure occurred while executing com.android.build.gradle.internal.dexing.DexWorkAction      > Failed to process: D:\trabajos\delaware\sunarp-android\app\build\intermediates\transforms\APMSPlugin\hms\debug\127.jar

所有生成类型都将minifyEnabled选项设置为false,但是,proguard-rules.pro文件包含以下行:

-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.huawei.hianalytics.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}

集成的部分服务插件版本如下,Gradle版本为7.3.3。

classpath 'com.android.tools.build:gradle:7.2.1'

classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.0"

classpath "com.google.dagger:hilt-android-gradle-plugin:2.42"

classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.5.3"

classpath "com.huawei.agconnect:agcp:1.6.0.300"

hmsImplementation 'com.huawei.hms:maps:6.9.0.300'

hmsImplementation 'com.huawei.hms:location:6.9.0.300'

 

【问题分析】

1、一开始对问题进行分析时,看到开发者的项目中的gradle插件版本为7.3.3,AGC插件版本为1.6.0.300,与此不匹配。所以推荐将AGC插件版本升级到1.6.2.300或更高版本。

cke_2505.png

但是开发者反馈升级ACPG后,问题仍然存在:

cke_5281.png

2、再根据开发者第二次反馈的内容进行分析。AGC插件现在只支持gradle版本7.0.X,再让开发者更改gradle版本并重试。最终可以解决问题,不再报错。

 

【解决方案】

AGC插件现在最高只支持gradle版本7.0.X。需要将匹配的gradle版本更改到7.0.X及以下。而与gradle 7.3.3等以上兼容的AGC插件将在不久的将来发布。

https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-common-faq-0000001063210244

cke_7652.png

 

 欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

posted @ 2023-03-24 10:44  华为开发者论坛  阅读(308)  评论(0编辑  收藏  举报