IL2CPP需要NDK

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

IL2CPP需要NDK

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

不能使用最新的NDK版本

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

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

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

每个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,然后点击下一步即可。

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

相关文章:

  • 2022-12-23
  • 2021-10-17
  • 2021-06-09
  • 2021-10-21
  • 2022-12-23
  • 2021-10-27
  • 2022-12-23
  • 2021-06-21
猜你喜欢
  • 2022-12-23
  • 2021-06-19
  • 2021-11-04
  • 2022-03-03
  • 2022-12-23
  • 2022-12-23
  • 2021-07-05
相关资源
相似解决方案