GradleException:Crashlytics 无法确定 stripped/unstripped 本机库目录

GradleException: Crashlytics could not determine stripped/unstripped native library directories

有很多“喋喋不休”,但我没有为我的项目找到答案。

在我的项目中使用 Crashlytics 执行 Gradle 同步时,Gradle 无法同步。我有其他项目很好,当我 'diff' build.gradle 文件和其他 Android Studio 设置时,它们具有与 Crashlytics 相关的相同值和设置。

A problem occurred configuring project ':app'.
> org.gradle.api.GradleException: Crashlytics could not determine stripped/unstripped native library directories for project ':app', variant Debug. These are required for generating symbol files when NDK build tasks cannot be automatically inferred. Please specify strippedNativeLibsDir and unstrippedNativeLibsDir in the firebaseCrashlytics extension.

我不是在找人来分类我的配置,而是我想知道在我的项目文件中我可以在哪里找到“firebaseCrashlytics 扩展”及其配置,以及剥离和未剥离的文件在哪里,以便我可以提供小路?如果您从文档中知道答案,请分享 link.

在我的项目级别 build.gradle 中,Android Studio 建议将 firebase-crashlytics-gradle 从 2.1.1 更新到 2.4.1。当我接受升级建议时,gradle sync 失败,因此我无法构建我的项目。这个错误被掩盖了,因为我继承了这个落后几个版本的旧项目,并且我更新了所有(大多数)框架并且无法确定这个单一依赖项。我重新开始并有选择地逐步升级,直到这是唯一的下层依赖项。

稍后有更新时我会再试一次 包括。

dependencies {
        classpath 'com.android.tools.build:gradle:4.1.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath 'com.google.gms:google-services:4.3.5'
        classpath 'com.github.dcendents:android-maven-gradle-plugin:2.1'
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.4'
        classpath 'org.jacoco:org.jacoco.core:0.8.0'
        // Unable to build with v2.4.1 of firebase-crashlytics-gradle on this version of build (2021/02/02)
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.1.1'
}

就我而言,我在本地克隆了同一个存储库的几个项目。其中之一是一个太旧的分支。就像 3-4 年前一样。为此,我在 local.properties 文件中给出了另一个 NDK 的路径。

ndk.dir=C\:\NDK\android-ndk-r13b\android-ndk-r13b

这导致我最近的分支出现问题。删除它后 - 它起作用了。因此,即使这对您来说不是完全相同的情况 - 很可能您正在使用错误的 SDК 进行构建。尝试在 SDK 管理器中更新,或者像我上面那样尝试明确说明您需要什么。

确保您的 android/app/build.gradle 具备以下条件:

release {
     // ...
     firebaseCrashlytics {
          nativeSymbolUploadEnabled true
          strippedNativeLibsDir 'build/intermediates/stripped_native_libs/release/out/lib'
          unstrippedNativeLibsDir 'build/intermediates/merged_native_libs/release/out/lib'
     }
     // ...
 }

https://github.com/invertase/react-native-firebase/issues/4253#issuecomment-797187492