【问题标题】:Uploading ProGuard Mapping Files to Firebase将 ProGuard 映射文件上传到 Firebase
【发布时间】:2023-04-10 11:13:02
【问题描述】:

我正在尝试最近发布的功能,该功能允许使用 gradle 任务将 ProGuard 映射文件上传到 Firebase (https://firebase.google.com/docs/crash/android)。以下是我正在运行的任务。

./gradlew -PFirebaseServiceAccountFilePath=xxxxx.json :app:firebaseUploadReleaseProguardMapping

但是,它似乎无法识别服务帐户文件。有没有人有运气让这个工作?我也尝试在 gradle.properties 中定义FirebaseServiceAccountFilePath

* What went wrong:
Execution failed for task ':app:firebaseUploadReleaseProguardMapping'.
> Service account file path has not been defined! Service accounts are used to authorize your mapping file uploads.  Learn more at
  https://firebase.google.com/docs/crash/android.

【问题讨论】:

    标签: android firebase firebase-crash-reporting


    【解决方案1】:

    在 gradle.properties 中设置 json 的相对路径(在项目根目录中)

    FirebaseServiceAccountFilePath = /firebase-crashreporting.json
    

    并在您的 build.gradle 中更新此属性

    apply plugin: 'com.android.application'
    apply plugin: 'com.google.firebase.firebase-crash'
    
    android {
        ...
    }
    
    setProperty("FirebaseServiceAccountFilePath", rootProject.rootDir.absolutePath + FirebaseServiceAccountFilePath)
    
    dependencies {
        ...
    }
    

    【讨论】:

    • 应该是公认的答案,因为它比指定显式的非相对路径更优雅
    【解决方案2】:

    错误信息具有误导性。如果未找到您为服务帐户提供的文件路径,您将看到这一点。尝试传递服务帐户文件的完整、明确的路径(尽量不要依赖相对路径)。

    我会确保插件的下一个版本对于找不到文件的情况有更有意义的错误消息。很抱歉给您带来麻烦。

    【讨论】:

    • 谢谢道格。使用完整路径让我解决了这个问题。我得到的下一个错误是 FileNotFoundException: /google-services.json"。我想对google-services.json 的依赖是有道理的(出于各种原因,我们使用FirebaseApp.initializeApp() 来初始化firebase而不是取决于该文件的存在)
    • 知道了。那是一个完全不同的问题。我将不得不提交一个不同的问题,让您也可以通过命令行传递项目 ID。现在,您可以尝试下载项目的 google-services.json 文件并将其放在预期的位置,这样插件就可以获取执行上传所需的内容。
    • 我们这样做的问题是相同的代码/构建用于构建(动态)数量的不同应用程序。
    • 啊,是的,我只是在错误报告中写了那个案例。但是,是的,我提出的解决方法对您来说并不容易,因为您必须为每个变体复制一个新文件,然后单独运行它们。
    • 为了它的价值,我使用了相对路径。相对于app 模块目录而不是项目目录。
    【解决方案3】:

    就我而言,我使用 Jenkins 为我上传 proguard 映射。我不得不将 json 私钥文件的文件权限从 400 更改为 444

    【讨论】:

      猜你喜欢
      • 2018-06-22
      • 2017-04-03
      • 1970-01-01
      • 2018-04-27
      • 1970-01-01
      • 2019-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多