使用多风味编译GMS和HMS包。但是GMS版本编译的时候报错

ooW*_*Noo 6 android json package firebase huawei-mobile-services

我有一个应用程序配置了两种编译风格,一种使用 HMS,另一种则不使用。不使用HMS的flavor编译时,包名与json文件中的包名不一致。结果,出现错误。

Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':app:processAppgalleryconnectLatestDebugAGCPlugin'.
> ERROR: Failed to verify AGConnect-Config '/client/package_name', expected: 'com.dise.appge.hms', but was: 'com.dise.appge.gms'

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
==============================================================================
Run Code Online (Sandbox Code Playgroud)

那么不同风味使用不同包名时如何解决这个问题呢?

zha*_*hen 4

您可以在应用程序的 build.gradle 中对其进行配置。例如如果有HMS和GMS两种口味,可以尝试添加以下代码:

if (getGradle().getStartParameter().getTaskNames().toString().contains("HMS")) {
    apply plugin: 'com.huawei.agconnect'
}
Run Code Online (Sandbox Code Playgroud)

即GMS编译时不添加AGC插件,避免JSON文件中包名不一致的问题。