要为 Android 构建和运行应用程序,必须安装 Unity Android Build Support 平台模块。还需要安装 Android 软件开发工具包(SDK)和原生开发工具包(NDK)才能在 Android 设备上构建和运行代码。默认情况下,Unity 会安装基于 OpenJDK 的 Java 开发工具包。
注意:Unity 支持 Android 4.4 “KitKat” 和更高版本。请参阅 AndroidSdkVersions 以了解详细信息。
使用 Unity Hub 安装 Android Build Support 和所需的依赖项:Android SDK & NDK Tools 以及 OpenJDK。
可在安装 Unity Editor 时安装 Android Build Support、Android SDK & NDK Tools 以及 OpenJDK,也可在以后添加它们。
如需了解关于添加 Android 模块的信息:
如果使用的是 2018 版 Unity,请参阅 Unity 2018.4 文档以了解如何手动安装这些依赖项。
要启用 USB 调试,必须在设备上启用开发者选项 (Developer options)。要完成该操作,请在设备的 Settings 菜单中找到构建版本号。版本号的位置因设备而异;对于原生 Android,此信息通常位于 Settings > About phone > Build number 中。有关设备和 Android 版本的具体信息,请咨询硬件制造商。
按照上述说明导航到版本号后,点击版本号七次。随后会弹出一条通知消息“You are now X steps away from being a developer”,其中“X”是一个数字,每点击一次就会倒数一个数。在第七次点击时,Developer options 将解锁。
注意:在 4.2 (Jelly Bean) 之前的 Android 版本上,默认启用 Developer options。
选择 Settings > Developer options(如果找不到,在一些设备上,可以查找路径 Settings > System > Developer options),然后选中 USB debugging 复选框。Android 通过 USB 连接到计算机的情况下将进入调试模式。
用 USB 线缆将设备连接到计算机。如果在 Windows 计算机上进行开发,可能需要安装特定于设备的 USB 驱动程序。如需了解更多信息,请参阅设备制造商网站。
Windows 和 macOS 的设置过程有所不同;对此,Android 开发者网站上有详细说明。有关将 Android 设备连接到 SDK 的更多信息,请参阅 Android 开发者文档的运行应用程序 (Run Your App) 部分。
Unity 建议使用 Unity Hub 来安装 Android SDK & NDK Tools,以确保您获得正确的版本和配置。Unity 分别在 /Unity/Hub/Editor/[EditorVersion]/Editor/Data/PlaybackEngines/AndroidPlayer/ 下的 SDK、NDK 和 OpenJDK 文件夹中安装 Android SDK & NDK Tools 和 OpenJDK。
如果多个 Unity 版本具有相同的依赖关系(请确保查看系统要求以了解最新要求),并希望避免重复安装 Android SDK & NDK Tools 和 OpenJDK,则可以在 Unity Preferences 窗口中指定一个共享位置。为此,请选择 Preferences > External tools,并在 SDK 和 NDK 字段中输入目录路径:
警告:Unity 未正式支持除了提供的 OpenJDK、SDK 或 NDK 版本外的其他版本。
要更改 Unity 用于构建 Android 应用程序的 OpenJDK、SDK Tools 或 NDK,请执行以下操作:
Unity 可使用随 Unity 版本发布时提供的最新版 Android SDK。
每个版本的 Unity 都需要安装特定版本的 Android NDK:
Unity 版本 | NDK 版本 |
---|---|
2017.4 LTS | r13b |
2018.4 LTS | r16b |
2019.1 | r16b |
2019.2 | r16b |
2019.3 | r19 |
请参阅系统要求页面以查看完整要求。
Unity Hub 安装了 Google Play 所需的最新版本的 Android SDK Target API。
如果您需要使用更新的版本,您可以从 Player Settings 窗口的 Target API Level字段更改 Target API(菜单:Edit > Project Settings > Player,然后选择 Android 平台)。您可以在 Other Settings > Identification 部分找到 Target API Level 选项。
选择默认选项以外的选项后,Unity 会提示您更新 Android SDK API。可选择执行以下操作之一:
注意:如果您选择旧版本的 Target API,Unity Android SDK Updater 将无法执行更新,并会显示以下消息:
Android SDK 不包括您的(版本的)目标 SDK。请使用 Android SDK Manager 安装您的目标 SDK 版本。安装 SDK 后重新启动 Unity 以使更改生效。
在这种情况下,要更新 Android SDK Target API,您必须通过 Android Studio 或者命令行工具使用 Android sdkmanager。无论您选择哪种方法,请确保在 Edit > Preferences > External Tools 窗口中为 Unity 选择正确的 Android SDK 文件夹。
在 Windows 上,如果 Unity 编辑器安装在默认文件夹 (/Program Files/
) 中,您必须以提升的权限(以管理员身份运行)运行 sdkmanager 才能执行更新。
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.