NDK未安装

Nai*_*j29 14 android android-ndk flutter

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

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                              
Run Code Online (Sandbox Code Playgroud)

但是,android NDK 已安装。

Adi*_*tya 21

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

解决方案

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

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

Run Code Online (Sandbox Code Playgroud)

编辑:

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

android {
    ...
    ndkVersion rootProject.ext.ndkVersion
    ...
}
Run Code Online (Sandbox Code Playgroud)

或者你也可以直接在这里写版本,如下所示:

android {
    ...
    ndkVersion "23.0.7599858"
    ...
}
Run Code Online (Sandbox Code Playgroud)

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

  • @Nailuj29 这似乎是正确的答案。请接受这一点。 (2认同)

vin*_*uli 9

  1. 使用android studio打开 a. 转到设置、系统设置、android sdk,在选项卡上选择 SDK 工具,确认是否安装了 NDK(并排)和 CMake 工具 如果未安装,请检查它们并按“应用”下载并安装它们。SDK工具确认,NDK和CMake

  2. 确认成功后。打开项目 android 文件夹,找到local.properties文件android/local.properties。你会发现类似这样的东西local.properties 文件

添加你的NDK路径如下添加ndk路径

找到您的 NDK 路径

  1. 如果是linux,则转到home文件,android文件夹,sdk文件夹,在里面找到ndk文件夹,即 /Android/Sdk/ndk/24.0.8215888

快乐编码!!!


Ser*_*kyi 1

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

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

  • 虽然这解决了错误,但我认为这并不是一个很好的解决问题的方法。拥有调试符号很重要。提供有关如何安装缺少的 NDK 的信息怎么样? (6认同)
  • 这不是解决方案 (2认同)