背景
Android studio 打包apk过程中报错 No version of NDK matched the requested version 21.0.6113669. Versions available locally: 20.1.5948944
解决方案
1. 在build.gradle 指定NDK版本或者升级gradle
-
指定ndk方式 android {
ndkVersion '20.1.5948944'
}
-
升级gradle从而避免gradle的坑 20年2月-6月发行的Android Gradle plugin 3.6-4.1之间的版本,如果项目有依赖ndk,可能存在编译不通过问题。4.1.0-beta01已修复该bug。 可以尝试升级gradle来解决这个问题,而这就需要gradle和gradle plugin, 二者之间还存在版本对应, 原博主给出了一个gradle 7.0.x 的例子
- gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https://services.gradle.org/distributions/gradle-7.0.2-bin.zip
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.3'
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
2. 安装指定版本NDK
除了方式1之外,还可以在Android studio安装指定版本NDK解决这个问题.
-
打开Android Studio的 SDK Manager 或者通过点击Files 菜单下Settings 进入 设置页面搜索Android SDK 找到SDK Tools -
选择要下载的NDK 和CMake , 选中Show PackagesDetails 后就能选择自己需要的版本了, 本项目根据报错信息来看需要的是21.0.6113669 的NDK -
选中之后点击OK 进行下载, 下载完成后,点击finish 结束 -
再次运行代码就能解决这个问题了
参考
https://blog.csdn.net/chzphoenix/article/details/124123977 https://blog.csdn.net/qq_46546793/article/details/123018139
|