发行说明

此页面概述了 Android 游戏开发套件 (AGDK) 库每个版本的更改。在 v1.2.4 版本之前,它被称为 Android 游戏 SDK。

2023.3.0.0 (2023年6月2日)

此版本包含一些错误修复。

GameActivity

已修复 GameActivityEvents 中的稳定性修复。

Android内存建议库

功能 更新了为库提供支持的机器学习模型,可以为更新的手机提供改进的结果。

Android性能调整器

已修复 修复了如果最大检测键多于直方图计数,库会崩溃的错误。
功能 更新了库中的遥测收集功能,允许更细粒度地报告帧渲染时间。

2023.2.0.0 (2023年4月27日)

此版本包含一些错误修复。

GameActivity

已修复 修复了使用historicalEventTimes过早释放内存的问题。
已修复 修复了historicalEventTimesNanos在32位系统上溢出的问题。

Android内存建议库

已修复 修复了阻止库的静态版本正确链接的错误。
已修复 修复了库无法正确加载所需的TensorFlow Lite资产的错误。

2023.1.0.0 (2023年3月15日)

此主要版本更新了构建系统,可以更快地从源代码构建库。

GameActivity

已更改 更改了历史事件时间的接口以克服32位限制。
功能 提供用户访问配置更改。
功能 优化了触摸事件处理中的大多数JNI调用。
已修复 修复了操作系统对触摸事件的默认处理,例如处理系统按钮。

GameController

功能 添加了检测硬件键盘连接状态的功能。
功能 添加了从主设备(即手机)以及控制器报告运动数据(加速计/陀螺仪)的功能。
已更改 更改了控制器定义数据库的API和格式,以减少内存占用并支持其他功能。

Android帧速率调节库

功能 添加了Vulkan帧统计信息。
功能 添加了一个用于清除帧统计信息的新API。
已更改 所有日志在发布模式下均静默,可以在调试模式下启用。

2022.0.0 (2022年3月15日)

此主要版本包含内存建议库以及其他库的一些修复。

GameActivity

功能 添加了对内边距的处理,以便在IME和切口周围定位游戏UI。
功能 添加键和运动事件过滤器
已修复 修复以避免输入事件丢失并防止使用所有输入事件

Android性能调整器

已更改 内存报告现在是时间序列而不是直方图
功能 允许以编程方式设置上传间隔
已修复 修复了API密钥损坏的错误

Android帧速率调节库

功能 改进自动模式
功能 添加“uninjectTracer”函数

Android内存建议库

功能 添加了内存建议库

2021.1.0 (2021年7月12日)

以前我们称此产品为 Android 游戏 SDK,现在称为 Android 游戏开发套件。此主要版本包含几个新库以及 Android 帧速率调节和 Android 性能调整器库的一些错误修复。

功能 GameActivity 是一个新组件,它取代并改进了 NDK 的 NativeActivity。
功能 GameTextInput 是一个新组件,它改进了与 Android 软键盘的交互。
功能 GameController 是一个新组件,它允许更轻松地与外部控制器交互和管理。

1.2.4 (2021年4月21日)

此版本是 Android 性能调整器的错误修复版本。

Android性能调整器

已修复 修复了在 CLOCK_BOOTTIME 不一致的设备上加载时间和持续时间记录的问题。

1.2.3 (2021年3月10日)

此版本将 Oboe 添加到游戏 SDK 中。Android 帧速率调节库和 Android 性能调整器没有任何更改。

Oboe 是一个开源 C++ 库,用于在 Android 上进行高性能音频处理。Oboe 提供了一个可在 Android 4.1(API 级别 16)及更高版本上使用的单一原生 API。

1.2.2 (2021年2月12日)

此版本改进了 Android 性能调整器的加载时间 API,并修复了一些错误。Android 帧速率调节库没有任何更改。

Android性能调整器

功能 加载事件现在必须与对 TuningFork_startLoadingGroupTuningFork_stopLoadingGroup 的调用分组。
已修复 调用 TuningFork_flush 会立即上传数据,而不是将其排队以供以后上传。
已修复 由于时间格式的 JSON 格式错误导致间歇性上传失败。
已修复 发布版本中存在上传问题。

1.2.1 (2020年12月16日)

此版本是 Android 性能调整器的内部功能版本,并将 Jetpack 库从 Alpha 版提升到 Beta 版。Android 帧速率调节或 Android 性能调整器 API 没有更改。

请注意,现在必须在链接到它们时分别引用游戏 SDK 库,而不是链接到通用“gamesdk”库。请参阅 Android 帧速率调节:OpenGLAndroid 帧速率调节:VulkanAndroid 性能调整器 的构建设置。

Android性能调整器

功能 当玩家在加载过程中将游戏置于后台时,会发送一个事件以供以后分析加载放弃情况。

1.2.0 (2020年10月29日)

此版本的主要更改是添加了一种记录加载时间的机制。还有一些错误修复。请注意,游戏 SDK 现在可以通过 AGDK 库 Jetpack 库 获得。

Android帧速率调节库

功能 自动模式刷新率切换支持。
请注意,对于 Android 11 中多个刷新率的支持,无论是否使用自动模式,都应调用 SwappyGL_setWindowSwappyVk_setWindow
已修复 自动模式错误修复。
已修复 Vulkan 错误修复。

Android性能调整器

功能 加载时间。
应调用新函数 TuningFork_startRecordingLoadingTimeTuningFork_stopRecordingLoadingTime 以记录带注释的加载时间事件。从应用启动到 TuningFork_init 和第一次刻度的时间会自动记录。
已更改 以前设置加载时间注释的方法将不再起作用。
功能 生命周期事件。
在调用相应的 Java onCreate 等时,应调用 TuningFork_reportLifecycleEvent。这使得能够从 Android 性能调整器中详细报告崩溃。
已更改 当调用 TuningFork_enableMemoryRecording(true) 时,现在会记录更多内存指标。
已更改 内存模型更改。
每种类型的指标的最大数量现在是在启动时指定的,而不是为所有可能的注释组合分配空间。请参阅 tuningfork.h 中的 TuningFork_MetricLimits
已修复 在计量连接上不上传。

1.1.0 (2020年6月10日)

此版本的 AGDK 库具有 Android 性能调整器 指标报告和质量调整库(也称为 Tuning Fork)。此库可用于原生游戏引擎以及 Unity,并具有以下功能

功能 Android 帧速率调节库 集成,以自动记录帧时间和其他渲染指标。
功能 帧时间信息记录在直方图中,并定期上传。
功能 使用当前游戏状态注释时间数据。
功能 设备特性、注释和质量设置与时间数据一起上传,以允许横截面分析。
功能 对表示关卡加载时间的注释进行特殊处理。在加载期间不记录帧刻度数据,但会记录每个加载时段的持续时间。
功能 能够记录自定义时间信息(使用 startTraceendTrace)。

1.0.2 (2020年3月30日)

此版本包含错误修复以及自动模式行为的更改。

已修复 修复了 Swappy 销毁和重新初始化的错误。
已更改 现在默认情况下启用流水线。如果自动流水线开启,当工作负载非常低时,Swappy 仍然可以决定将其关闭。
已更改 启用自动模式后,Swappy 只有在 2 秒窗口内 15% 的帧比预期快或慢时,才会决定切换交换间隔。请注意,Swappy 的交换速度永远不会低于用户指定的交换间隔。

1.0.1 (2020年2月19日)

此版本主要是错误修复版本。

已修复 在 Vulkan 的 SwappyFallback 代码路径中清理退出时的资源。
已修复 SwappyVk_destroySwapchain 如果存在多个交换链,则不再销毁设备资源。
已修复 Swappy 版本现在已打印在 logcat 中。
已修复 API 级别 24 及以下版本的 Swappy_destroy 中的崩溃和死锁。
功能 支持自定义线程管理器 (Swappy_setThreadFunctions)。
功能 支持挂钩 Vulkan 函数 (SwappyVk_setFunctionProvider)。

1.0.0 (2019年12月5日)

AGDK 库的初始版本包含 Android 帧速率控制库

功能 显示缓冲区同步。
功能 自动刷新率模式和流水线支持。
功能 收集帧渲染统计信息。
功能 根据 Swappy 所需的 Android、OpenGL 和 Vulkan 功能的存在,在运行时优雅地选择行为。
功能 库的静态和动态链接。
功能 支持具有多个刷新率的设备。