Firebase android发行版不允许applicationIdSuffix

问题描述 投票:0回答:1

[运行./gradlew appDisUploadDevDebug时出现错误,提示找不到应用程序。

罪魁祸首是我的开发人员口味applicationIdSuffix = ".dev"。删除它会允许apk上载,但是工件将无法正确构建。为了记录,我计划仅将dev风格用于内部分发。

[我收到一条错误消息,说我应该启用应用程序分发,但是由于这是在“ firebase项目”级别完成的,并且已经完成了主要的操作,所以我不能再这样做了。

* What went wrong:
Execution failed for task ':app:appDistributionUploadDevDebug'.
> App Distribution could not find your app 1:xxxxxxxxx:android:0b3f<xxxxxxxxx>.
  Make sure to onboard your app by pressing the "Get started" button on the App Distribution page in the Firebase console:

        https://console.firebase.google.com/project/_/appdistribution

将其记录为错误,由于找到了解决方法,因此我将添加回复。

android firebase continuous-integration
1个回答
0
投票

解决方法:要解决此问题,请打开app/google-services.json,然后寻找mobilesdk_app_id键作为主程序包名称。

例如,在我的情况下,我注意到1:xxxxxxx:android:0b3f<xxxxxxx>是带有.dev后缀的软件包的值,而主软件包名称(无.dev)显示在1:xxxxxxx:android:7eb88<xxxxxxxx>下]]

所以转到app/build.gradlefirebaseAppDistribution块看起来像这样

firebaseAppDistribution {
     appId = "1:xxxxxxxx:android:7eb88<xxxxxxxx>"

我仍然认为这是Firebase发行版中的错误。听起来分发gradle代码选择了正确的值,但是分发服务器不兼容。

BTW]当开发人员希望/需要拥有2个独立的Firebase项目时,您需要下载2个独立的google-services.json文件,并将它们放置在适当的风味文件夹中。我也有一个(第二和第三)应用程序,与该设置共享一个项目,但是还没有添加firebase发行版来检查其行为。

供参考,我的解决方法在提供serviceCredentialsFile时起作用。我也尝试过使用Web令牌认证,但结果没有定论。

© www.soinside.com 2019 - 2024. All rights reserved.