Android gradle 在每次构建时上传 NDK 符号

Jes*_*rix 5 android gradle android-ndk firebase crashlytics

我想在每次构建时上传 NDK 符号,

在我的 Android 里面 gradle 我曾经拥有:

applicationVariants.all { variant ->
    def variantName = variant.name.capitalize()
    println("symbols will be added on varinat ${variantName}")
    def task = project.task("ndkBuild${variantName}")
    task.finalizedBy project.("uploadCrashlyticsSymbolFile${variantName}")
}
Run Code Online (Sandbox Code Playgroud)
  1. 自从我搬到 FireBase 后,这不再编译:

    无法获取未知属性“uploadCrashlyticsSymbolFile”

  2. 我没有看到这个任务在运行。

  3. 我基本上需要在每个构建上运行这个任务:

    ./gradlew app:assembleBUILD_VARIANT\ app:uploadCrashlyticsSymbolFileBUILD_VARIANT

Mar*_*ler 2

您可能需要使用 Firebase App Distribution,它允许自动上传发布构建工件 - 如果您有具有匹配调试符号的工件,则实际上可以使用它们 - 如果没有匹配的程序集,这些符号有些无关紧要。

第 1 条显然是错误的假设,因为文档明确指出:

./gradlew app:assembleBUILD_VARIANT app:uploadCrashlyticsSymbolFileBUILD_VARIANT
Run Code Online (Sandbox Code Playgroud)

这已经在这里得到了回答。


为了始终上传,可以创建任务依赖项:

assembleRelease.finalizedBy uploadCrashlyticsSymbolFileRelease
Run Code Online (Sandbox Code Playgroud)

这可能需要设置unstrippedNativeLibsDirstrippedNativeLibsDir