6

在构建颤振应用程序时,我收到一条错误消息

FAILURE: Build failed with an exception.                                
                                                                        
* What went wrong:                                                      
Execution failed for task ':app:extractReleaseNativeDebugMetadata'.     
> NDK is not installed                                                  
                                                                        
* Try:                                                                  
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
                                                                        
* Get more help at https://help.gradle.org                              
                                                                        
BUILD FAILED in 822ms                              

但是,已安装 android NDK。

4

3 回答 3

11

我遇到过同样的问题。我想提取调试符号以便在生产环境中进行更好的调试。

解决方案

第 1 步:从 android studios 安装NDKCMAKESDK 工具(如果已经安装,您可以跳过它)

在 Android Studio 中打开任何项目。(不管是哪个项目。我们只是想访问 SDK 管理器)

  1. 打开项目后,单击Tools > SDK Manager

  2. 单击 SDK 工具选项卡。

  3. 选择 NDK(并排)和 CMake 复选框。

SDK 管理器的图像

在此处输入图像描述

  1. 单击确定。

  2. 一个对话框会告诉您 NDK 包在磁盘上占用了多少空间。

  3. 单击确定。

  4. 安装完成后,单击完成。

第2步

1. 检查您的系统中安装了哪个版本的 NDK。

要检查,请在 Android SDK 文件夹中找到 NDK 文件夹。对于 mac 用户,它位于 -~/Library/Android/sdk/ndk/

您将在此目录中找到一个带有 NDK 版本名称的文件夹。例如 - 在我的例子中,安装的 NDK 版本是23.0.7599858. 所以,我能够在这个位置找到这个目录~/Library/Android/sdk/ndk/23.0.7599858/

注意:对于 Ubuntu 或 windows 用户sdk/ndk目录的位置会有所不同。

2. 确保您具有文件中提到的相同 NDK 版本android/build.gradle
buildscript {
    ext {
        ...
        ndkVersion = "23.0.7599858"  # the installed version of ndk.
    }
    ...
}

编辑:

确保您已像这样ndkVersion初始化app/build.gradle

android {
    ...
    ndkVersion rootProject.ext.ndkVersion
    ...
}

或者你也可以像这样直接在这里写版本:

android {
    ...
    ndkVersion "23.0.7599858"
    ...
}

如果您这样做,则不必添加 ndkVersion android/build.gradle

于 2021-09-09T18:49:35.117 回答
1

我在为 Android 构建的 AppCenter 上的 React Native 0.64 应用程序上遇到了这个错误。解决方案是转到android/app/build.gradle文件和注释ndk { debugSymbolLevel 'FULL' }行(如果有)(defaultConfig { ndk { debugSymbolLevel } }

我的同事 Jose 找到了解决方案,因此所有功劳归功于他)

于 2021-05-25T09:04:59.033 回答
0

我只从android studio安装了ndk,我的问题刚刚解决,包括...

本地属性

ndk.dir=<ANDROID_SDK>\\ndk\\XX.X.XXXXXXX

android/app/build.gradle

android {
    // ...

    ndkVersion "XX.X.XXXXXXX"
    // ...

    buildTypes{
        release{
            signingConfig signingConfigs.release
            ndk {
            debugSymbolLevel 'SYMBOL_TABLE'
             }
        }
    }
}

这可以帮助某人并节省他/她的时间。

于 2022-01-07T10:31:33.463 回答