[英]NDK is not installed
构建 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
但是,安装了 android NDK。
我遇到过同样的问题。 我想提取调试符号以便在生产环境中进行更好的调试。
NDK
和CMAKE
SDK 工具(如果已安装,您可以跳过它)在 Android 工作室中打开任何项目。 (不管哪个项目。我们只想访问 SDK 经理)
打开项目后,单击Tools > SDK Manager
。
单击 SDK 工具选项卡。
Select NDK(并排)和 CMake 复选框。
SDK 管理器图片
单击确定。
一个对话框告诉您 NDK package 在磁盘上消耗了多少空间。
单击确定。
安装完成后,单击完成。
要检查,请在 Android SDK 文件夹中找到 NDK 文件夹。 对于 mac 用户,它位于 - ~/Library/Android/sdk/ndk/
您将在此目录中找到一个带有 NDK 版本名称的文件夹。 例如 - 在我的例子中,安装的 NDK 版本是23.0.7599858
。 所以,我能够在这个位置找到这个目录~/Library/Android/sdk/ndk/23.0.7599858/
注意:对于 Ubuntu 或 windows 用户sdk/ndk
目录的位置会有所不同。
android/build.gradle
文件中提到的相同的 NDK 版本。buildscript {
ext {
...
ndkVersion = "23.0.7599858" # the installed version of ndk.
}
...
}
编辑:
确保在app/build.gradle
ndkVersion
初始化了 ndkVersion,如下所示:
android {
...
ndkVersion rootProject.ext.ndkVersion
...
}
或者你也可以像这样直接在这里写版本:
android {
...
ndkVersion "23.0.7599858"
...
}
如果您这样做,则不必在android/build.gradle
中添加 ndkVersion。
我在为 Android 构建的 AppCenter 上的 React Native 0.64 应用程序上遇到了该错误。 解决方案是将 go 到android/app/build.gradle
文件并注释ndk { debugSymbolLevel 'FULL' }
行,如果有的话( defaultConfig { ndk { debugSymbolLevel } }
)
我的同事 Jose 找到了解决方案,因此所有功劳归功于他)
我添加后
ndk {
debugSymbolLevel 'FULL'
}
在应用程序 build.gradle 文件中,我收到有关未安装 NDK 的错误。
我通过在主 build.gradle 文件中进行此更改解决了同样的问题
dependencies {
classpath 'com.android.tools.build:gradle:7.1.3'
...
}
这个 Gradle 升级迫使我升级 gradle/wrapper/gradle-wrapper.properties 文件中的 url
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
我有 Android Studio Bumblebee 2021.1.1 补丁 3
我只从 android 工作室安装了 ndk,我的问题刚刚解决,包括...
ndk.dir=<ANDROID_SDK>\\ndk\\XX.X.XXXXXXX
android {
// ...
ndkVersion "XX.X.XXXXXXX"
// ...
buildTypes{
release{
signingConfig signingConfigs.release
ndk {
debugSymbolLevel 'SYMBOL_TABLE'
}
}
}
}
这可以帮助某人并节省他/她的时间。
如果您使用的是 Flutter 请使用这种方法(根据您从 android studio 签入的 ndk 版本),它解决了我的问题,我将它用于调试符号本机崩溃
android {... ndkVersion "23.0.7599858"... }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.