本页说明如何使用“Tuanjie 用作库”(Used as a Library, UAAL)功能将 Tuanjie 运行时库集成到 Android 应用程序中。
使用此功能可以在应用程序中包含 Tuanjie 支持的功能(例如 3D/2D 实时渲染、3D 模型交互或 2D 迷你游戏)。Tuanjie 运行时库公开了多种控件来管理何时以及如何在应用程序中加载、激活和卸载内容。
重要提示:如果将项目升级到 Tuanjie,由于 Tuanjie 引入了 UAAL 的机制,你可能需要对 原生 和 托管 插件进行适配,以确保它们在 Android 上正常工作。那些会修改 Gradle 清单(Manifest)的插件,需要按照 在原生 iOS/Android 应用中使用 UAAL 中介绍的方法进行 Gradle 的相应修改。
从 Tuanjie 构建 Gradle 项目时,无需进行任何其他操作。
Tuanjie 生成的每个 Android Gradle 项目都具有以下结构:
要将 Tuanjie 集成到另一个 Android Gradle 项目中,必须通过 settings.gradle 文件将生成的 Android Gradle 项目的 tuanjieLibrary 模块包含在您的 Android Tuanjie 项目中。
要控制播放器,请转发 Intent 以启动 Tuanjie 活动并在必要时对其进行扩展。如需了解更多信息,请参阅有关 Intent 和 Intent 过滤器 (Intents and Intent Filters) 的 Android 开发者文档。还可以使用 TuanjiePlayer Java API。
IUnityPlayerLifecycleEvents 提供一种与 Tuanjie Player 的两个重要生命周期事件进行交互的方式:
Application.Unload
或 UnityPlayer.unload()
卸载 Tuanjie Player 时,应用会触发 IUnityPlayerLifecycleEvents.onUnityPlayerUnloaded
。此时 Tuanjie Player 进入暂停状态,卸载所有场景,但保留其他内容在内存中。IUnityPlayerLifecycleEvents.onUnityPlayerQuitted
。在该调用之后,运行 Tuanjie 的进程也将终止。可将 IUnityPlayerLifecycleEvents
的实例传递到 Tuanjie Player 构造函数或者覆盖 UnityPlayer
和 UnityPlayerActivity
子类中的方法。
Tuanjie 不会控制运行时生命周期,因此 UAAL 可能并不适用于所有可能的用例。已知限制包括: