安装指定版本Android NDK 解决No version of NDK matched the requested version问题

背景

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
    
    • build.gradle
    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
    在这里插入图片描述
    在这里插入图片描述

  • 选择要下载的NDKCMake, 选中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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值