背景
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_HOMEdistributionPath=wrapper/distszipStoreBase=GRADLE_USER_HOMEzipStorePath=wrapper/distsdistributionUrl=https://services.gradle.org/distributions/gradle-7.0.2-bin.zip
- build.gradle
buildscript{ repositories{google()jcenter()} dependencies{ classpath'com.android.tools.build:gradle:7.0.3'} allprojects{ repositories{google()jcenter()}} taskclean(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