包含此页的版本:
不含此页的版本:
在 Unity Android 项目中使用 GameActivity 应用程序入口点之前,请参阅以下系统要求和兼容性信息。
下表列出了每个 Unity 版本的推荐 GameActivity 库版本。
| Unity 版本 | GameActivity 库版本 |
|---|---|
| 6000.3 | 3.0.5 |
| 6000.2 | 3.0.5 |
| 6000.1 | 3.0.5 |
| 6000.0.22f1 及更高版本 | 3.0.5 |
| 6000.0.0b16 - 6000.0.21f1 | 3.0.2 |
| 6000.0.0b14 - 6000.0.0b15 | 3.0.0 |
| 6000.0.0a1 - 6000.0.0b13 | 2.0.0 |
GameActivity 需要以下依赖项:
GameActivity 使用 CMake 生成桥接代码 (libgame.so) 在构建过程中。
注意:如果您提供自定义 Android SDK,请确保该 SDK 包含 CMake 3.22.1。
GameActivity 需要以下 AndroidXGradle一种 Android 构建系统,可自动执行多个构建过程。这种自动化意味着许多常见的生成错误不太可能发生。更多信息
请参阅术语表依赖:
androidx.appcompat:appcompatandroidx.games:games-activityandroidx.core:coreAndroidx.constraintlayoutGradle 会自动安装 AndroidX 和这些依赖项。
如果您使用 GameActivity,您的应用程序播放器循环会在本机线程而不是 Java 线程上运行。这意味着从插件在 Unity 外部创建的一组代码,用于在 Unity 中创建功能。可以在 Unity 中使用两种插件:托管插件(使用 Visual Studio 等工具创建的托管 .NET 程序集)和本机插件(特定于平台的本机代码库)。更多信息
请参阅术语表将失败。在myLooper这是因为本机线程上不存在 Java 循环器。这也意味着任何使用 API 的 APImyLooper也会失败。例如,如果处理程序为 null,则 registerInputDeviceListener 将失败。创建 Android 插件时,请务必了解此限制。
如果您使用 GameActivity,Unity 会尝试使用 NDK 编排器来同步帧时间。如果设备 API 级别低于 24,或者您的应用程序使用 32 位播放器且设备 API 级别低于 29,则 Unity 将使用 Java 编排器。