Firebase crashlytics 映射文件上传不起作用
Firebase crashlytics mapping file upload doesn't work
我已将 firebase crashlytics 库和 crashlytics gradle 插件添加到我的项目
classpath("com.google.firebase:firebase-crashlytics-gradle:2.3.0")
...
plugins {
...
id("com.google.firebase.crashlytics")
...
}
...
implementation("com.google.firebase:firebase-crashlytics:17.2.1")
implementation("com.google.firebase:firebase-analytics:17.5.0")
我使用
为我的发布构建类型明确设置了 mappingFileUploadEnabled
getByName("release").apply {
firebaseCrashlytics.mappingFileUploadEnabled = true
}
可惜映射文件没有上传。我在 firebase crashlytics 控制台中对其进行了验证 - 因为我的测试崩溃堆栈跟踪指向 Unknown Source:55
。
这是我在 gradle 日志中找到的内容:
[DEBUG] [com.google.firebase.crashlytics] Mapping File Upload Enabled: false; id: 00000000000000000000000000000000
所以我的 mappingFileUploadEnabled
标志似乎没有效果。
我是否需要执行其他操作才能使映射文件上传工作?
我也没有在我的项目中看到 firebaseUpload*ReleaseProguardMapping
个任务。不确定是否应该创建它。
更新
我试图从头开始创建一个空的 android 项目并在其中添加 firebase-crashlytics
。它似乎可以正常工作,我可以看到为所有构建类型创建的 uploadCrashlyticsMappingFile
任务。所以现在看起来 firebase-crashlytics
gradle 插件不能为我的项目正常工作并且不能创建它应该创建的任务。有人知道为什么吗?
今天我了解到,如果您以声明方式应用 firebase-crashlytics
gradle 插件,则使用 plugins {}
块不会创建映射文件上传任务。为了让它工作,我必须使用遗留的 apply(..)
函数命令式地应用插件。这是我现在项目中的内容:
apply(plugin = "com.google.firebase.crashlytics")
plugins {
//other plugins
}
进行此更改后,映射文件上传工作正常。
更新
我发现如果我将 crashlytics
插件移动到 plugins
部分的底部,我会得到相同的效果。
现在看起来像:
plugins {
//all other plugins
id("com.google.firebase.crashlytics")
}
我已将 firebase crashlytics 库和 crashlytics gradle 插件添加到我的项目
classpath("com.google.firebase:firebase-crashlytics-gradle:2.3.0")
...
plugins {
...
id("com.google.firebase.crashlytics")
...
}
...
implementation("com.google.firebase:firebase-crashlytics:17.2.1")
implementation("com.google.firebase:firebase-analytics:17.5.0")
我使用
为我的发布构建类型明确设置了mappingFileUploadEnabled
getByName("release").apply {
firebaseCrashlytics.mappingFileUploadEnabled = true
}
可惜映射文件没有上传。我在 firebase crashlytics 控制台中对其进行了验证 - 因为我的测试崩溃堆栈跟踪指向 Unknown Source:55
。
这是我在 gradle 日志中找到的内容:
[DEBUG] [com.google.firebase.crashlytics] Mapping File Upload Enabled: false; id: 00000000000000000000000000000000
所以我的 mappingFileUploadEnabled
标志似乎没有效果。
我是否需要执行其他操作才能使映射文件上传工作?
我也没有在我的项目中看到 firebaseUpload*ReleaseProguardMapping
个任务。不确定是否应该创建它。
更新
我试图从头开始创建一个空的 android 项目并在其中添加 firebase-crashlytics
。它似乎可以正常工作,我可以看到为所有构建类型创建的 uploadCrashlyticsMappingFile
任务。所以现在看起来 firebase-crashlytics
gradle 插件不能为我的项目正常工作并且不能创建它应该创建的任务。有人知道为什么吗?
今天我了解到,如果您以声明方式应用 firebase-crashlytics
gradle 插件,则使用 plugins {}
块不会创建映射文件上传任务。为了让它工作,我必须使用遗留的 apply(..)
函数命令式地应用插件。这是我现在项目中的内容:
apply(plugin = "com.google.firebase.crashlytics")
plugins {
//other plugins
}
进行此更改后,映射文件上传工作正常。
更新
我发现如果我将 crashlytics
插件移动到 plugins
部分的底部,我会得到相同的效果。
现在看起来像:
plugins {
//all other plugins
id("com.google.firebase.crashlytics")
}