不同版本的Unity要求的NDK版本和两者对应关系表(Unity NDK Version Match)

IL2CPP需要NDK

Unity使用IL2CPP模式出安卓包时,需要用到NDK,如果没有安装则无法导出Android Studio工程或直接生成APK,本篇记录一下我下载NDK不同版本的填坑过程。

IL2CPP需要NDK

image-20210703145750459

不能使用最新的NDK版本

image-20210703144731706

NDK的大版本和小版本号都要一致

image-20210703151026968

每个Unity版本要求的ndk版本对照表

Unity version NDK version
2018.4 LTS r16b
2019.4 LTS r19
2020.3 LTS r19
2021.1 r21d
2021.2 r21d

数据来源官网:https://docs.unity3d.com/Manual/android-sdksetup.html

下载NDK

我从google的官网手动下载的ndk19c,但和unity2019.3要求的小版本号不一致,会出现无法编译(见开篇的第二三图)。目前(2021-07-04))在google的官网上只提供了ndk19c的版本,并没有unity要的ndk19这个老版本。

下面介绍方法来获取Unity需要的ndk版本。

Unity2019和Unity2020要求的NDK19.0下载地址:https://dl.google.com/android/repository/android-ndk-r19-windows-x86_64.zip

手动修改ndk版本号

这个方法是修改ndk的属性文件,把版本号修改为unity要求的版本号,我这样修改后可以正常打出APK包,但是不确定是否会有其它副作用。

打开ndk的目录,找到source.properties文件,我从google官网下载的ndk19c版本号为:19.2.5345600,而unity2019要求的版本号是:19.0.5232133,使用文本编辑器修改版本号如下:

Pkg.Desc = Android NDK
Pkg.Revision = 19.0.5232133

通过Unity Hub来安装

Unity的原话是:

Unity 建议使用 Unity Hub 来安装 Android SDK & NDK Tools,以确保您获得正确的版本和配置。Unity 分别在 /Unity/Hub/Editor/[EditorVersion]/Editor/Data/PlaybackEngines/AndroidPlayer/ 下的 SDKNDKOpenJDK 文件夹中安装 Android SDK & NDK Tools 和 OpenJDK。

方法就是:打开Unity Hub,在安装 - 添加模块 - 勾选Android SDK和NDK,然后点击下一步即可。

image-20210703151806317

posted @ 2021-07-04 10:52  赵青青  阅读(5092)  评论(2编辑  收藏  举报