将ProGuard映射file upload到Firebase

我正在尝试使用最近发布的function,使用Gradle任务将ProGuard映射file upload到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. 

Solutions Collecting From Web of "将ProGuard映射file upload到Firebase"

错误消息是误导。 您将会看到,如果没有find您为服务帐户提供的文件path。 尝试传递服务帐户文件的完整,明确的path(尽量不要依赖相对path)。

我将确保插件的下一个版本有一个更有意义的错误消息,以查找未find该文件的情况。 对不起,麻烦。

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

 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 { ... } 

在我的情况下,我正在使用jenkins上传我的proguard映射。 我必须将json私钥文件的文件权限从400更改为444