Android 游戏

Android 游戏库镜像了 Android 游戏 SDK,该 SDK 可作为二进制下载。您可以使用 androidx 库,而无需手动下载并将 Android 游戏 SDK 集成到您的构建中。

有关 Android 游戏 SDK 的更多信息,请参阅SDK 文档SDK 版本说明

此表列出了 androidx.games 组中的所有工件。

工件 稳定版 发布候选版 Beta 版 Alpha 版
games-activity 4.0.0 - - 4.2.0-alpha01
games-controller 2.0.2 - - 2.2.0-alpha01
games-frame-pacing 2.1.2 - - 2.3.0-alpha01
games-memory-advice 2.0.1 - 2.1.0-beta01 2.2.0-alpha01
games-text-input 4.0.0 - - 4.2.0-alpha01
games-performance-tuner 2.0.0 - - 2.2.0-alpha01
此库上次更新于:2025 年 3 月 26 日

要求

games-memory-advice

MemoryAdvice API 要求您的应用使用 NDK 版本 r23.* 或更高版本构建。

声明依赖项

要添加对游戏的依赖项,您必须将 Google Maven 仓库添加到您的项目中。有关更多信息,请阅读Google 的 Maven 仓库

在您的应用或模块的 build.gradle 文件中添加您所需的工件依赖项;games-activity 库已集成了相同版本的 game-text-input 库,因此 GameActivity 应用不能再次包含 game-text-input 依赖项

Groovy

android {
    ...
    // To use the Android Frame Pacing or Android Performance Tuner libraries, enable
    // native dependencies to be imported. Libraries will be made available to your CMake build
    // as packages named "games-frame-pacing" and "games-performance-tuner".
    buildFeatures {
        prefab true
    }
}

dependencies {
    // To use the Android Frame Pacing library
    implementation "androidx.games:games-frame-pacing:2.1.2"

    // To use the Android Performance Tuner
    implementation "androidx.games:games-performance-tuner:2.0.0"

    // To use the Games Activity library
    implementation "androidx.games:games-activity:4.0.0"

    // To use the Games Controller Library
    implementation "androidx.games:games-controller:2.0.2"

    // To use the Games Text Input Library
    // Do not include this if games-activity has been included
    implementation "androidx.games:games-text-input:4.0.0"
}

Kotlin

android {
    ...
    // To use the Android Frame Pacing or Android Performance Tuner libraries, enable
    // native dependencies to be imported. Libraries will be made available to your CMake build
    // as packages named "games-frame-pacing" and "games-performance-tuner".
    buildFeatures {
        prefab = true
    }
}

dependencies {
    // To use the Android Frame Pacing library
    implementation("androidx.games:games-frame-pacing:2.1.2")

    // To use the Android Performance Tuner
    implementation("androidx.games:games-performance-tuner:2.0.0")

    // To use the Games Activity library
    implementation("androidx.games:games-activity:4.0.0")

    // To use the Games Controller Library
    implementation("androidx.games:games-controller:2.0.2")

    // To use the Games Text Input Library
    // Do not include this if games-activity has been included
    implementation("androidx.games:games-text-input:4.0.0")
}
}

有关依赖项的更多信息,请参阅添加构建依赖项

添加 Gradle 属性

您可能需要在与您的应用(或模块)的 build.gradle 文件位于同一目录中的 gradle.properties 文件中添加属性。如果 gradle.properties 文件不存在,请创建此文件。

如果您使用的是 Android Studio 4.0,请确保 gradle.properties 包含以下行

# Enables experimental Prefab
android.enablePrefab=true
# Tell Android Studio we are using AndroidX
android.useAndroidX=true

如果您使用的是 Android Studio 4.1 或更高版本,请确保 gradle.properties 包含以下行

# Tell Android Studio we are using AndroidX
android.useAndroidX=true

使用 CMake 添加包

要使导入的游戏 SDK 包可用,请将以下内容添加到您的主应用的 CMakeLists.txt 文件中

# Add the packages from the Android Game SDK
find_package(games-frame-pacing REQUIRED CONFIG)
find_package(games-performance-tuner REQUIRED CONFIG)

这将允许您在游戏代码中包含 Android 游戏 SDK 的头文件

#include "swappy/swappyGL.h"
#include "tuningfork/tuningfork.h"

在您的主应用的 CMakeLists.txt 文件中,找到主共享库的 target_link_libraries。添加对 Android 游戏 SDK 静态库的引用,以将其包含在您的共享库中

target_link_libraries(...
  games-frame-pacing::swappy_static
  games-performance-tuner::tuningfork_static
  ...)

反馈

您的反馈有助于改进 Jetpack。如果您发现新问题或对改进此库有任何想法,请告诉我们。在创建新问题之前,请查看此库中的现有问题。您可以通过点击星形按钮为您已有的问题投票。

创建新问题

有关更多信息,请参阅问题跟踪器文档

Games-Memory-Advice 版本 2.1

版本 2.1.0-beta01

2023 年 11 月 29 日

androidx.games:games-memory-advice:2.1.0-beta01 已发布。版本 2.1.0-beta01 包含这些提交。

版本 2.1.0-alpha01

2023 年 11 月 15 日

androidx.games:games-memory-advice:2.1.0-alpha01 已发布。版本 2.1.0-alpha01 包含这些提交。

新功能

  • 更新了库的内存模型以实现更好的预测。

API 更改

  • 添加了一个新的 API getAvailableMemory(),它返回可以安全分配的内存量的估计值(以字节为单位)。

版本 2.1.0-alpha01

2023 年 7 月 26 日

androidx.games:games-memory-advice:2.1.0-alpha01 已发布。版本 2.1.0-alpha01 包含这些提交。

API 更改

  • 添加GetAvailableMemory函数

Bug 修复

  • 更新内存建议模型
  • 修复共享 memory_advice 构建目标

Games-Memory-Advice 版本 2.0

版本 2.0.1

2023 年 9 月 20 日

androidx.games:games-memory-advice:2.0.1 已发布。版本 2.0.1 包含这些提交。

Bug 修复

  • 修复了由于线程未附加到 JVM 而导致状态监视器线程崩溃的问题。

版本 2.0.0

2023 年 9 月 6 日

androidx.games:games-memory-advice:2.0.0 已发布。版本 2.0.0 包含这些提交。

2.0.0 的主要功能

  • 此版本中已训练并发布了新的 ML 模型。
  • 实现了预测空闲内存量的 API。

版本 2.0.0-rc01

2023 年 7 月 26 日

androidx.games:games-memory-advice:2.0.0-rc01 已发布。版本 2.0.0-rc01 包含这些提交。

新功能

  • 包含了一个新模型,以更好地预测剩余内存。

Bug 修复

  • 修复了 Memory Advice 无法与共享 STL 配合使用的问题。

版本 2.0.0-beta04

2023 年 5 月 24 日

androidx.games:games-memory-advice:2.0.0-beta04 已发布。版本 2.0.0-beta04 包含这些提交。

新功能

  • 更新了支持此库的机器学习模型,这将允许为新手机提供改进的结果

版本 2.0.0-beta03

2023 年 4 月 5 日

androidx.games:games-memory-advice:2.0.0-beta03 已发布。版本 2.0.0-beta03 包含这些提交。

Bug 修复

  • 修复了库无法正确加载所需的 tensorflow lite 资产的错误

版本 2.0.0-beta02

2023 年 3 月 22 日

androidx.games:games-memory-advice:2.0.0-beta02 已发布。版本 2.0.0-beta02 包含这些提交。

Bug 修复

  • 修复了阻止库的静态版本正确链接的错误

版本 2.0.0-beta01

2023 年 2 月 22 日

androidx.games:games-memory-advice:2.0.0-beta01 已发布。版本 2.0.0-beta01 包含这些提交。

新功能

  • 无新变化

版本 2.0.0-alpha01

2023 年 2 月 8 日

androidx.games:games-memory-advice:2.0.0-alpha01 已发布。版本 2.0.0-alpha01 包含这些提交。

API 更改

  • 由于构建文件重构,主版本号增加。

Bug 修复

  • 库资产配置不正确现在会报错,而不是崩溃。

Games-Memory-Advice 版本 1.0.0

版本 1.0.0-beta03

2022 年 11 月 9 日

androidx.games:games-memory-advice:1.0.0-beta03 已发布。版本 1.0.0-beta03 包含这些提交。

新功能

  • 无新变化

版本 1.0.0-beta01

2022 年 3 月 9 日

androidx.games:games-memory-advice:1.0.0-beta01 已发布。版本 1.0.0-beta01 包含这些提交。

  • 自 1.0.0-alpha01 以来无变化。

版本 1.0.0-alpha01

2022 年 2 月 23 日

androidx.games:games-memory-advice:1.0.0-alpha01 已发布。版本 1.0.0-alpha01 包含这些提交。

新功能

  • 此 C 库提供了查询和接收设备运行游戏时内存状态变化的设备回调功能。

API 更改

  • 这是内存建议库的初始版本。有关完整 API,请参阅 include/memory_advice/memory_advice.h 中的头文件。

外部贡献

Games-Text-Input 版本 3.0

版本 3.0.4

2024 年 8 月 7 日

androidx.games:games-text-input:3.0.4 已发布。版本 3.0.4 包含这些提交

Bug 修复

  • 修复了带文本选择和不带文本选择的删除功能。

Games-Activity 版本 4.0

版本 4.2.0-alpha01

2025 年 3 月 26 日

androidx.games:games-activity:4.2.0-alpha01androidx.games:games-text-input:4.2.0-alpha01 已发布。版本 4.2.0-alpha01 包含这些提交

新功能

Bug 修复

  • 修复了 GameActivity 中的一个错误,其中 getLocaleScriptgetLocaleCountrygetLocaleVariant 报告的是区域设置语言而不是请求的值 (1198bb0)
  • 修复了 GameActivity 中的一个错误,该错误导致我们错误地报告了软键盘打开-关闭事件。 (a63ecca)
  • 修复了 GameTextInput 处理多字节表情符号的错误 (9d54c68)

版本 4.0.0

2025 年 2 月 12 日

androidx.games:games-activity:4.0.0androidx.games:games-text-input:4.0.0 已发布。版本 4.0.0 包含这些提交

4.0.0 的主要功能

  • AAR 文件现在包含预构建的静态库。现在,应用程序代码应通过 prefabs 使用这些库,并且只包含头文件(例如 #include "GameActivity.h"),而不是包含实现文件(例如 #include "GameActivity.cpp")。
  • 此外,使用 GameActivity 的原生代码现在可以获取 Android 区域设置信息。

Bug 修复

  • GameTextInput 中的许多错误已得到修复。该库现在更加稳定,并支持许多流行的软键盘和硬键盘。

版本 4.0.0-rc01

2025 年 1 月 29 日

androidx.games:games-activity:4.0.0-rc01androidx.games:games-text-input:4.0.0-rc01 已发布。版本 4.0.0-rc01 包含这些提交

版本 4.0.0-beta01

2025 年 1 月 15 日

androidx.games:games-activity:4.0.0-beta01androidx.games:games-text-input:4.0.0-beta01 已发布。版本 4.0.0-beta01 包含这些提交

Bug 修复

  • 更好地记录了新添加的与区域设置相关的功能。
  • 为所有枚举类型添加了支持类型。

版本 4.0.0-alpha01

2024 年 10 月 16 日

androidx.games:games-activity:4.0.0-alpha01androidx.games:games-text-input:4.0.0-alpha01 已发布。版本 4.0.0-alpha01 包含这些提交

新功能

  • GameTextInput 现在支持左/右键。

API 更改

  • 已移除 GameTextInput 的过时 Java 接口。
  • GameActivityGameTextInput 的 Prefab 现在包含所有源文件。不再建议使用 #include <GameActivity.cpp>。请改用适当的静态或动态库链接,例如 CMake 中的 game-activity::game-activity_static。这些库随 AAR 文件一起提供。

Bug 修复

  • GameTextInput 中进行了许多修复。打字和删除功能已修复。
  • 改进了与大多数流行软键盘的兼容性。
  • 修复了硬件键盘上特殊字符的处理问题。
  • 修复了 GameActivity 中罕见的空指针访问问题。

Games-Activity 版本 3.0

版本 3.0.5

2024 年 8 月 7 日

androidx.games:games-activity:3.0.5 已发布。版本 3.0.5 包含这些提交

Bug 修复

  • 发布了新版本的 GameActivity 以匹配 GameTextInput 的 3.0.4 版本(修复了输入中的文本删除功能)。

版本 3.0.4

2024 年 7 月 10 日

androidx.games:games-activity:3.0.4 已发布。版本 3.0.4 包含这些提交

Bug 修复

  • 修复了空指针处理问题。
  • 修复了 onConfiguration() 回调中某些状态缺少状态更新的问题。

版本 3.0.3

2024 年 4 月 17 日

androidx.games:games-activity:3.0.3androidx.games:games-text-input:3.0.3 已发布。版本 3.0.3 包含这些提交

Bug 修复

  • 修复了与某些软键盘的兼容性问题。

版本 3.0.2

2024 年 4 月 3 日

androidx.games:games-activity:3.0.2androidx.games:games-text-input:3.0.2 已发布。版本 3.0.2 包含这些提交

Bug 修复

  • 我们对 GamesTextInput 进行了一些修复,旨在改进软键盘和硬键盘支持。此外,还修复了一个阻止在不使用 GameActivity 的情况下使用 GameTextInput 的错误。

版本 3.0.1

2024 年 3 月 20 日

androidx.games:games-activity:3.0.1androidx.games:games-text-input:3.0.1 已发布。版本 3.0.1 包含这些提交

Bug 修复

  • 修复了特殊字符输入和显示的问题。

版本 3.0.0

2024 年 3 月 6 日

androidx.games:games-activity:3.0.0androidx.games:games-text-input:3.0.0 已发布。版本 3.0.0 包含这些提交

3.0.0 的主要功能

  • GameTextInput 已重新设计,可用于游戏。
  • 两个库中的一些接口已相对于 2.0.0 版本进行了更改。

Bug 修复

  • 修复了与旧 NDK 的兼容性问题
  • 修复了 Windows 构建问题

版本 3.0.0-rc01

2024 年 2 月 21 日

androidx.games:games-activity:3.0.0-rc01androidx.games:games-text-input:3.0.0-rc01 已发布。版本 3.0.0-rc01 包含这些提交。

Bug 修复

  • 修复了键盘事件未被 looper 正确处理导致的冻结问题。

版本 3.0.0-beta01

2023 年 11 月 29 日

androidx.games:games-activity:3.0.0-beta01androidx.games:games-text-input:3.0.0-beta01 已发布。版本 3.0.0-beta01 包含这些提交。

版本 3.0.0-alpha01

2023 年 11 月 15 日

androidx.games:games-activity:3.0.0-alpha01androidx.games:games-text-input:3.0.0-alpha01 已发布。版本 3.0.0-alpha01 包含这些提交。

API 更改

  • GameActivityMotionEventGameActivityCallbacks 结构体的大小发生了变化。
  • onEditorAction 的返回类型从布尔值更改为 void。
  • setImeEditorInfo 现在需要枚举参数,而不是整数。
  • GameActivityEvents 的内部函数已移至 GameActivityEvents_internal.h
  • GameTextInput 的输入类型也是枚举,而不是整数。

Games-Activity 版本 2.1

版本 2.1.0-alpha02

2023 年 9 月 6 日

androidx.games:games-activity:2.1.0-alpha02androidx.games:games-text-input:2.1.0-alpha02 已发布。版本 2.1.0-alpha02 包含这些提交。

Bug 修复

  • 32 位设备的兼容性已得到改进。

版本 2.1.0-alpha01

2023 年 7 月 26 日

androidx.games:games-activity:2.1.0-alpha01 已发布。版本 2.1.0-alpha01 包含这些提交。

新功能

  • 提供覆盖 SurfaceView 实例创建的能力
  • 添加 SDK 版本报告

API 更改

  • historicalEventTimes 使用 int64_t 而不是 long,以避免在 32 位系统上溢出
  • 添加 GameActivity_restartInput 方法
  • 添加原生回调以处理软键盘可见性更改

Bug 修复

  • 优化触摸事件处理
  • 正确销毁 GameActivityMotionEven
  • 修复 GameActivityMotionEvent_getHistoricalAxisValue 索引计算
  • 修复运动过滤器的位掩码

Games-Activity 版本 2.0

版本 2.0.2

2023 年 5 月 24 日

androidx.games:games-activity:2.0.2 已发布。版本 2.0.2 包含这些提交。

Bug 修复

版本 2.0.1

2023 年 4 月 5 日

androidx.games:games-activity:2.0.1 已发布。版本 2.0.1 包含这些提交。

Bug 修复

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

版本 2.0.0

2023 年 3 月 8 日

androidx.games:games-activity:2.0.0 已发布。版本 2.0.0 包含这些提交。

2.0.0 的主要功能

  • 更改了历史事件时间接口以克服 32 位限制。
  • 提供了用户对配置更改(例如方向)的访问权限。
  • contentRect 结构中提供了最新信息。
  • 提供了一种更简单的方法来自定义默认 SurfaceView
  • 修复了默认操作系统处理触摸事件(例如处理系统按钮)的问题。
  • 优化了触摸事件处理中的大多数 JNI 调用;这以前会影响性能。

版本 2.0.0-rc01

2023 年 2 月 22 日

androidx.games:games-activity:2.0.0-rc01 已发布。版本 2.0.0-rc01 包含这些提交。

版本 2.0.0-beta01

2023 年 2 月 8 日

androidx.games:games-activity:2.0.0-beta01 已发布。版本 2.0.0-beta01 包含这些提交。

Bug 修复

  • 修复了系统按钮处理。 (2a103e)

版本 2.0.0-alpha01

2023 年 1 月 11 日

androidx.games:games-activity:2.0.0-alpha01 已发布,无更改。版本 2.0.0-alpha01 包含这些提交。

Games-Activity 版本 1.2

版本 1.2.2

2022 年 12 月 7 日

androidx.games:games-activity:1.2.2 已发布。版本 1.2.2 包含这些提交。

Bug 修复

  • 最大运动事件数现在可以在运行时设置。

版本 1.2.2-alpha01

2022 年 11 月 9 日

androidx.games:games-activity:1.2.2-alpha01 已发布。版本 1.2.2-alpha01 包含这些提交。

API 更改

  • API 现在也包含以 GAMEACTIVITY_PACKED_VERSION 形式存在的版本信息。 (I287e6)
  • 添加了 onContentRectChanged 回调,当窗口中应放置内容的矩形发生变化时会调用此回调。 (I81396)

Bug 修复

  • 修复了事件缓冲区溢出。现在 inputBuffer->keyEventsmotionEvents 都是动态分配的缓冲区。 (Ic00f6)
  • 内存不足时优雅地失败。添加了在缓冲区大小调整期间处理 realloc() 错误的功能。

版本 1.2.1

2022 年 7 月 13 日

androidx.games:games-activity:1.2.1 已发布。版本 1.2.1 包含这些提交。

Bug 修复

  • 修复了先前版本中缺少 .aar 文件的问题。

版本 1.2.0

2022 年 6 月 15 日

androidx.games:games-activity:1.2.0 已发布。版本 1.2.0 包含这些提交。

自 1.1.0 以来的重要更改

  • 允许 GameActivity 的派生类处理原生库加载。
  • 始终在 GameActivity.onCreate 中加载原生库。
  • 如果未找到其他库,则回退到加载名为“main”的库。

Games-Activity 版本 1.1

版本 1.1.0

2022 年 2 月 23 日

androidx.games:games-activity:1.1.0androidx.games:games-controller:1.1.0 已发布。版本 1.1.0 包含这些提交。

自 1.0.0 以来的重要更改

游戏活动

  • 窗口内边距监听和刘海屏及 IME 响应查询
  • 添加按键和运动事件过滤器
  • Bug 修复
    • 为兼容 NativeActivity 添加缺失的消息
    • 修复 onNativeWindowResized 的签名
    • 修复输入事件丢失

版本 1.1.0-rc01

2022 年 2 月 9 日

androidx.games:games-activity:1.1.0-rc01androidx.games:games-controller:1.1.0-rc01 已发布。版本 1.1.0-rc01 包含这些提交。

版本 1.1.0-beta03

2022 年 1 月 26 日

androidx.games:games-activity:1.1.0-beta03 已发布。版本 1.1.0-beta03 包含这些提交。

Bug 修复

  • 修复 onNativeWindowResized 的签名
  • onSurfaceChanged 中维护原生窗口句柄

版本 1.1.0-beta02

2021 年 12 月 15 日

androidx.games:games-activity:1.1.0-beta02 已发布。版本 1.1.0-beta02 包含这些提交。

Bug 修复

  • 修复事件过滤器设置中的竞态条件。

版本 1.1.0-beta01

2021 年 11 月 17 日

androidx.games:games-activity:1.1.0-beta01 已发布。版本 1.1.0-beta01 包含这些提交。

新功能

  • 添加了对查询窗口内边距和监听内边距更改的支持。这允许游戏对 IME 弹出做出反应,并处理瀑布屏和摄像头开孔内边距。

API 更改

  • void GameActivity_getWindowInsets(GameActivity* activity, enum GameCommonInsetsType type, GameCommonInsets* insets);

Bug 修复

  • 避免消耗所有按键事件:音量、摄像头等现在会传递给系统。

版本 1.1.0-alpha01

2021 年 9 月 29 日

androidx.games:games-activity:1.1.0-alpha01 已发布。版本 1.1.0-alpha01 包含这些提交。

API 更改

  • onContentRectChanged 回调已添加到 GameActivityCallbacks

Bug 修复

  • 缺失的消息已添加到 android_native_app_glue.h
    • APP_CMD_CONTENT_RECT_CHANGED
    • APP_CMD_WINDOW_REDRAW_NEEDED

Games Performance Tuner 2.0

版本 2.0.0

2024 年 8 月 7 日

androidx.games:games-performance-tuner:2.0.0 已发布。版本 2.0.0 包含这些提交

2.0.0 的主要功能

  • 自 2.0.0beta01 以来无重大更改,我们只是将此版本标记为稳定版。

版本 2.0.0-beta01

2024 年 1 月 10 日

androidx.games:games-performance-tuner:2.0.0-beta01 已发布,与上一个 alpha 版本无更改。版本 2.0.0-beta01 包含这些提交。

版本 2.0.0-alpha07

2023 年 11 月 29 日

androidx.games:games-performance-tuner:2.0.0-alpha07 已发布。版本 2.0.0-alpha07 包含这些提交。

Bug 修复

  • 修复了内存遥测报告有时报告错误值的问题

版本 2.0.0-alpha06

2023 年 11 月 1 日

androidx.games:games-performance-tuner:2.0.0-alpha06 已发布。版本 2.0.0-alpha06 包含这些提交。

版本 2.0.0-alpha05

2023 年 8 月 23 日

androidx.games:games-performance-tuner:2.0.0-alpha05 已发布。版本 2.0.0-alpha05 包含这些提交。

新功能

  • 将 Protobuf 库迁移到 Protobuf lite。

Bug 修复

  • 修复了悬空指针问题。

版本 2.0.0-alpha04

2023 年 4 月 19 日

androidx.games:games-performance-tuner:2.0.0-alpha04 已发布。版本 2.0.0-alpha04 包含这些提交。

新功能

  • 更新了库中的遥测收集功能,允许更精细地报告帧渲染时间。

Bug 修复

  • 修复了当最大插桩键超过直方图计数时库崩溃的错误。

版本 2.0.0-alpha03

2023 年 2 月 22 日

androidx.games:games-performance-tuner:2.0.0-alpha03 已发布。版本 2.0.0-alpha03 包含这些提交。

Bug 修复

  • Games-Performance-Tuner 已移至新的发布流程。应该不会有行为更改。

版本 2.0.0-alpha02

2023 年 2 月 8 日

androidx.games:games-performance-tuner:2.0.0-alpha02 已发布。版本 2.0.0-alpha02 包含这些提交。

API 更改

  • 添加了 TuningFork_predictQualityLevels API;这将有助于预测要使用的正确质量级别/保真度参数。

Games Performance Tuner 1.6

版本 1.6.1-alpha01

2022 年 11 月 9 日

androidx.games:games-performance-tuner:1.6.1-alpha01 已发布。版本 1.6.1-alpha01 包含这些提交。

新功能

  • 无新变化

版本 1.6.0

2022 年 6 月 15 日

androidx.games:games-performance-tuner:1.6.0 已发布。版本 1.6.0 包含这些提交。

自 1.5.0 以来的重要更改

  • 修复了尝试获取内存遥测时 getpid 返回 0 的问题。
  • 阻止 StopLoadingGroup 在没有活动加载组的情况下执行。

Games Performance Tuner 1.5.0

版本 1.5.0

2022 年 2 月 9 日

androidx.games:games-performance-tuner:1.5.0 已发布。版本 1.5.0 包含这些提交。

自 1.4.0 以来的重要更改

  • 以编程方式更改上传间隔,而不是在初始设置中硬编码。
    • 添加函数:TuningFork_setAggregationStrategyInterval
  • 修复了 API<=23 上 API 密钥中的内存损坏问题

版本 1.5.0-rc01

2022 年 1 月 26 日

androidx.games:games-performance-tuner:1.5.0-rc01 已发布。版本 1.5.0-rc01 包含这些提交。

Bug 修复

  • 修复了 API<=23 上 API 密钥中的内存损坏问题

版本 1.5.0-beta02

2021 年 12 月 15 日

androidx.games:games-performance-tuner:1.5.0-beta02 已发布。版本 1.5.0-beta02 包含这些提交。

API 更改

  • TuningFork_Settings 中移除 ABI 破坏性更改。

版本 1.5.0-beta01

2021 年 9 月 29 日

androidx.games:games-performance-tuner:1.5.0-beta01 已发布。版本 1.5.0-beta01 包含这些提交。

新功能

  • 与 alpha 版本无更改。该版本包含
    • 以编程方式更改上传间隔,而不是在初始设置中硬编码。

API 更改

  • 与 alpha 版本无更改。该版本包含
    • 新函数:TuningFork_setAggregationStrategyInterval
    • TuningFork_Settings 中的新字段:aggregation_strategy_intervalms_or_count

版本 1.5.0-alpha01

2021 年 8 月 18 日

androidx.games:games-performance-tuner:1.5.0-alpha01 已发布。版本 1.5.0-alpha01 包含这些提交。

新功能

  • 现在可以以编程方式设置 APT 上传之间的间隔,而不是使用设置文件。

API 更改

  • 添加函数:TuningFork_setAggregationStrategyInterval
  • 将字段添加到 TuningFork_Settings 结构:aggregation_strategy_intervalms_or_count

Games-Activity 版本 1.0.0

版本 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 已发布。版本 1.0.0 包含这些提交。

1.0.0 的主要功能

这是 Games-Activity、Games-Controller 和 Games-Text-Input 的首次稳定版发布。有关更多信息,请参阅AGDK 主页

版本 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-activity:1.0.0-rc01 已发布。版本 1.0.0-rc01 包含这些提交。

Bug 修复

  • 修复 GameActivityCallbacks::onSaveInstanceState 的返回类型

版本 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-activity:1.0.0-beta01 已发布。版本 1.0.0-beta01 包含这些提交。

API 更改

  • GameActivityInputInfo 重命名为 GameActivityPointerAxes
  • onNativeWindowResized 回调现在提供窗口的宽度和高度。
  • 已移除 onContentRectChanged 回调。
  • onLowMemory 已重命名为 onTrimMemory
  • 已移除 GameActivity_setWindowFormat
  • 改进了 GameActivityMotionEventsGameActivityMotionEvent 指针的所有权模型。
  • 改进了 onSaveInstanceState 回调中用户状态的所有权模型。

版本 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-activity:1.0.0-alpha01 已发布。

新功能

  • Games-Activity 是一个新库,它取代 NativeActivity 成为将 C/C++ 游戏与 Android 集成的推荐方式。

Games-Controller 版本 2.2

版本 2.2.0-alpha01

2025 年 3 月 26 日

androidx.games:games-controller:2.2.0-alpha01androidx.games:games-memory-advice:2.2.0-alpha01androidx.games:games-performance-tuner:2.2.0-alpha01 已发布。版本 2.2.0-alpha01 包含这些提交

新功能

Games-Controller 版本 2.0

版本 2.0.2

2024 年 6 月 12 日

androidx.games:games-controller:2.0.2 已发布。版本 2.0.2 包含这些提交

Bug 修复

  • 修复了在 Paddleboat_init 之前已连接的控制器未触发控制器连接回调的问题。
  • 修复了游戏控制器触控板在未手动启用压力轴的情况下,未在 Paddleboat_processGameActivityMotionInputEvent 中注册触控板按压的问题。
  • 修复了游戏控制器触控板事件未被 Paddleboat_processGameActivityMotionInputEvent 标记为已消耗的问题。

版本 2.0.1

2023 年 9 月 20 日

`androidx.games:games-controller:2.0.1` 已发布。版本 2.0.1 包含这些提交。

游戏控制器 Bug 修复

  • 修复了 onInputDeviceChanged 处理程序中罕见的 NullReferenceException 条件。
  • 修复了阻止某些 USB 键盘不正确地注册为游戏控制器的问题。

版本 2.0.0

2023 年 3 月 8 日

androidx.games:games-controller:2.0.0 已发布。版本 2.0.0 包含这些提交。

2.0.0 的主要功能

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

版本 2.0.0-alpha01

2023 年 1 月 11 日

androidx.games:games-controller:2.0.0-alpha01 已发布。版本 2.0.0-alpha01 包含这些提交。

新功能

  • 硬件键盘检测
  • 集成传感器运动数据报告支持(即从手机本身接收陀螺仪和加速度计数据)
  • 新的优化控制器映射数据格式

API 更改

  • 用于硬件键盘的新 API 调用:Paddleboat_getPhysicalKeyboardStatusPaddleboat_setPhysicalKeyboardStatusCallback
  • 用于集成传感器运动数据报告的新 API 调用:Paddleboat_getIntegratedMotionSensorFlagsPaddleboat_setMotionDataCallbackWithIntegratedFlags
  • 用于修订控制器映射数据格式的新 API 调用:Paddleboat_addControllerRemapDataFromFdPaddleboat_addControllerRemapDataFromFileBuffer
  • 弃用了旧的映射 API 调用:Paddleboat_addControllerRemapDataPaddleboat_getControllerRemapTableData

Bug 修复

  • 修复了与 GameActivity 1.2.2 及更高版本中的运动事件的兼容性问题

Games-Controller 版本 1.1.0

版本 1.1.0

2022 年 2 月 23 日

androidx.games:games-activity:1.1.0androidx.games:games-controller:1.1.0 已发布。版本 1.1.0 包含这些提交。

自 1.0.0 以来的重要更改

游戏活动

  • 窗口内边距监听和刘海屏及 IME 响应查询
  • 添加按键和运动事件过滤器
  • Bug 修复
    • 为兼容 NativeActivity 添加缺失的消息
    • 修复 onNativeWindowResized 的签名
    • 修复输入事件丢失

版本 1.1.0-rc01

2022 年 2 月 9 日

androidx.games:games-controller:1.1.0-rc01 已发布。版本 1.1.0-rc01 包含这些提交。

版本 1.1.0-beta01

2022 年 1 月 26 日

androidx.games:games-controller:1.1.0-beta01 已发布,自 1.1.0-alpha01 以来无更改。版本 1.1.0-beta01 包含这些提交。

版本 1.1.0-alpha01

2021 年 12 月 15 日

androidx.games:games-controller:1.1.0-alpha01 已发布。版本 1.1.0-alpha01 包含这些提交。

新功能

在 Android S 或更高版本上运行时,添加了对受支持控制器上的电池状态、双电机振动、灯光控制和运动轴报告的支持。

API 更改

  • 添加了 Paddleboat_setMotionDataCallback 函数,用于注册控制器运动数据回调
  • 添加了 Paddleboat_setControllerLight 函数,用于更改控制器灯光设置。
  • Paddleboat_Controller_Battery 结构添加到 Paddleboat_Controller_Data
  • 新结构
    • Paddleboat_Controller_Battery
    • Paddleboat_Motion_Data
  • 新枚举
    • Paddleboat_BatteryStatus
    • Paddleboat_LightType
    • Paddleboat_Motion_Type
  • 新控制器标志
    • PADDLEBOAT_CONTROLLER_FLAG_ACCELEROMETER
    • PADDLEBOAT_CONTROLLER_FLAG_GYROSCOPE
    • PADDLEBOAT_CONTROLLER_FLAG_LIGHT_PLAYER
    • PADDLEBOAT_CONTROLLER_FLAG_LIGHT_RGB
    • PADDLEBOAT_CONTROLLER_FLAG_BATTERY

Bug 修复

  • 添加了 PS4 控制器的备用 deviceId 数据库条目
  • 添加了 PS5 控制器的 API >=31 数据库条目

Games-Controller 版本 1.0.0

版本 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 已发布。版本 1.0.0 包含这些提交。

1.0.0 的主要功能

这是 Games-Activity、Games-Controller 和 Games-Text-Input 的首次稳定版发布。有关更多信息,请参阅AGDK 主页

版本 1.0.0-rc02

2021 年 7 月 21 日

androidx.games:games-controller:1.0.0-rc02 已发布。版本 1.0.0-rc02 包含这些提交。

Bug 修复

  • 修复了导致 Prefab 导入在空的、未使用的架构/版本排列上失败的打包错误。

版本 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-controller:1.0.0-rc01 已发布。版本 1.0.0-rc01 包含这些提交。

Bug 修复

  • 修复了与最新 GameActivity 的不兼容问题

版本 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-controller:1.0.0-beta01 已发布。版本 1.0.0-beta01 包含这些提交。

API 更改

  • 以前返回布尔值表示成功或失败的函数现在返回 Paddleboat_Error_Code 枚举。
  • Paddleboat_onPause 重命名为 Paddleboat_onStop
  • Paddleboat_onResume 重命名为 Paddleboat_onStart
  • Paddleboat_processGameActivityEvent 分为两个函数:Paddleboat_processGameActivityKeyInputEventPaddleboat_processGameActivityMotionInputEvent
  • 移除了需要针对预览版 Android S SDK 进行构建的扩展控制器功能
  • 添加了 Paddleboat_getBackButtonConsumed 函数
  • 控制器和鼠标状态回调现在有一个可选参数,即指向用户定义数据的指针
  • 将控制器名称字符串移出设备信息结构,现在通过 Paddleboat_getControllerName 函数访问

Bug 修复

  • 修复了控制器最初未将自身报告为控制器,但后来通过 onInputDeviceChanged 消息报告为控制器时,未正确检测为控制器连接的问题。

版本 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-controller:1.0.0-alpha01 已发布。

新功能

  • Games-Controller 是一个新库,它提供了一个 C API,用于检测游戏控制器设备、从中读取输入以及与其交互。

Games-Text-Input 2.1

版本 2.1.0-alpha01

2023 年 7 月 26 日

androidx.games:games-text-input:2.1.0-alpha01 已发布。版本 2.1.0-alpha01 包含这些提交。

新功能

  • 添加多行和单行模式支持

API 更改

  • 添加 isSoftwareKeyboardVisible 函数
  • GameActivity_setImeEditorInfo 添加位域定义
  • 添加 onEditorAction 回调

Bug 修复

  • 修复了硬件和软件键盘不同步的问题
  • 软键盘隐藏时清除焦点

Games-Text-Input 2.0

版本 2.0.0

2023 年 3 月 8 日

androidx.games:games-text-input:2.0.0 已发布。版本 2.0.0 包含这些提交。

自 1.1.1 以来的重要更改

  • 由于构建系统的更改,主版本号已更新,库/API 本身没有更新。

Games-Text-Input 版本 1.1

版本 1.1.2-alpha01

2022 年 11 月 9 日

androidx.games:games-text-input:1.1.2-alpha01 已发布。版本 1.1.2-alpha01 包含这些提交。

新功能

  • 无新变化

版本 1.1.1

2022 年 7 月 13 日

androidx.games:games-text-input:1.1.1 已发布。版本 1.1.1 包含这些提交。

Bug 修复

  • 修复了先前版本中缺少 .aar 文件的问题。

版本 1.1.0

2022 年 2 月 9 日

androidx.games:games-text-input:1.1.0 已发布。版本 1.1.0 包含这些提交。

自 1.0.0 以来的重要更改 - 为 GameTextInput 添加了 WindowInsets 监听和查询功能 - 添加缺失的 gamecommon.h 头文件

版本 1.1.0-rc01

2022 年 1 月 26 日

androidx.games:games-text-input:1.1.0-rc01 已发布。版本 1.1.0-rc01 包含这些提交。

版本 1.1.0-beta01

2021 年 12 月 15 日

androidx.games:games-text-input:1.1.0-beta01 已发布。版本 1.1.0-beta01 包含这些提交。

Bug 修复

  • 修复瀑布屏和 IME 内边距
  • 添加缺失的 gamecommon.h 头文件

版本 1.1.0-alpha01

2021 年 10 月 13 日

androidx.games:games-text-input:1.1.0-alpha01 已发布。版本 1.1.0-alpha01 包含这些提交。

API 更改

  • 为 GameTextInput 添加了 IME 内边距功能

Games-Text-Input 版本 1.0

版本 1.0.0

2021 年 8 月 4 日

androidx.games:games-activity:1.0.0androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0 已发布。版本 1.0.0 包含这些提交。

1.0.0 的主要功能

这是 Games-Activity、Games-Controller 和 Games-Text-Input 的首次稳定版发布。有关更多信息,请参阅AGDK 主页

版本 1.0.0-rc01

2021 年 7 月 12 日

androidx.games:games-text-input:1.0.0-rc01 已发布,无更改。版本 1.0.0-rc01 包含这些提交。

版本 1.0.0-beta01

2021 年 6 月 30 日

androidx.games:games-text-input:1.0.0-beta01 已发布。版本 1.0.0-beta01 包含这些提交。

API 更改

  • 改进了 GameTextInputState 对象的所有权模型。
  • 类型整理以与 NDK 保持一致。

版本 1.0.0-alpha01

2021 年 6 月 16 日

androidx.games:games-text-input:1.0.0-alpha01 已发布。

新功能

  • Games-Text-Input 是一个新库,旨在帮助游戏开发者使用 C/C++ 从 Android 软键盘输入。

Games Frame Pacing 版本 2.3

版本 2.3.0-alpha01

2025 年 3 月 26 日

androidx.games:games-frame-pacing:2.3.0-alpha01 已发布。版本 2.3.0-alpha01 包含这些提交

新功能

Bug 修复

Games Frame Pacing 版本 2.1

版本 2.1.2

2024 年 7 月 24 日

androidx.games:games-frame-pacing:2.1.2 已发布。版本 2.1.2 包含这些提交

Bug 修复

  • Swappy 现在使用 API 33 中的 AChoreographer_postVsyncCallback 来更准确地计算演示时间。这修复了 120hz 设备上丢帧的错误。

版本 2.1.1

2024 年 7 月 10 日

androidx.games:games-frame-pacing:2.1.1 已发布。版本 2.1.1 包含这些提交

Bug 修复

  • 正确地从 swappy 注销显示监听器以避免卡顿。
  • 修复了 ChoreographerFilter::onSettingsChanged 中使用已销毁的互斥锁导致的崩溃。

版本 2.1.0

2023 年 11 月 15 日

androidx.games:games-frame-pacing:2.1.0 已发布。版本 2.1.0 包含这些提交。

版本 2.1.0-rc01

2023 年 9 月 20 日

androidx.games:games-frame-pacing:2.1.0-rc01 已发布。版本 2.1.0-rc01 包含这些提交。

版本 2.1.0-beta01

2023 年 5 月 24 日

androidx.games:games-frame-pacing:2.1.0-beta01 已发布。版本 2.1.0-beta01 包含这些提交。

Bug 修复

  • NDKChoreographer 初始化失败时的超时 (ef466d)
  • 使用 SwappyGL_getSupportedRefreshPeriodsNS 时从系统明确查询刷新率 (c85235)

版本 2.1.0-alpha01

2023 年 4 月 5 日

androidx.games:games-frame-pacing:2.1.0-alpha01 已发布。版本 2.1.0-alpha01 包含这些提交。

新功能

  • 重置帧速率状态的新 API。
  • 新 API 可禁用 swappy 的帧速率影响,同时仍观察 CPU 和 GPU 时间。

API 更改

  • SwappyGL_resetFramePacing/SwappyVk_resetFramePacing 现在可用于重置内部帧速率状态。帧速率现在将仅考虑从调用重置 API 时开始的数据。
  • SwappyGL_enableFramePacing/SwappyVk_enableFramePacing 现在可用于启用/禁用 swappy 的帧速率。禁用时,
  • SwappyGL_enableBlockingWait/SwappyVk_enableBlockingWait 可用于控制在禁用帧速率时是否发生上次帧 GPU 工作的阻塞等待。

Bug 修复

  • 使用 Swappy GL API 时,针对 GPU 瓶颈情况进行了性能改进。

Games Frame Pacing 版本 2.0

版本 2.0.0

2023 年 3 月 8 日

androidx.games:games-frame-pacing:2.0.0 已发布。版本 2.0.0 包含这些提交。

自 1.10.1 以来的重要更改

  • 构建系统进行了重大更改,导致只生成一个库,而不是每个 SDK/NDK 版本生成多个库。
  • 添加了 Vulkan 帧统计信息。
  • 添加了用于清除帧统计信息的新 API。
  • 在发布模式下,所有日志都静默,它们可以在调试模式下启用。

版本 2.0.0-rc01

2023 年 2 月 22 日

androidx.games:games-frame-pacing:2.0.0-rc01 已发布。版本 2.0.0-rc01 包含这些提交。

新功能

  • 日志现在隐藏在编译标志后面。默认情况下,库的发布版本没有日志记录,而库的调试版本已启用所有日志记录。

版本 2.0.0-beta01

2023 年 2 月 8 日

androidx.games:games-frame-pacing:2.0.0-beta01 已发布。版本 2.0.0-beta01 包含这些提交。

新功能

  • 引入了清除帧统计信息的新 API。

API 更改

  • 添加了 SwappyGL_clearStatsSwappyGL_clearStats API。

版本 2.0.0-alpha01

2023 年 1 月 11 日

androidx.games:games-frame-pacing:2.0.0-alpha01 已发布。版本 2.0.0-alpha01 包含这些提交。

新功能

  • 添加了 Vulkan 帧统计信息

API 更改

  • 由于构建文件重构,主版本号增加
  • 添加了 3 个新 API:SwappyVk_enableStatsSwappyVk_recordFrameStartSwappyVk_getStats

Bug 修复

  • 仅在自动交换模式下应用阈值 (Ic0786)

Games Frame Pacing 1.10

版本 1.10.2-alpha01

2022 年 11 月 9 日

androidx.games:games-frame-pacing:1.10.2-alpha01 已发布。版本 1.10.2-alpha01 包含这些提交。

新功能

  • 无新变化

版本 1.10.1

2022 年 6 月 15 日

androidx.games:games-frame-pacing:1.10.1 已发布。版本 1.10.1 包含这些提交。

Bug 修复

  • 修复了 swappy 无法在 ndk <23 和 >17 的情况下构建的问题。
  • 公开了用于检索显示器支持的刷新率的 API。

版本 1.10.0

2022 年 2 月 23 日

androidx.games:games-frame-pacing:1.10.0 已发布。版本 1.10.0 包含这些提交。

自 1.9.0 以来的重要更改

  • 忽略污染编舞器过滤器输入并进行更多平滑处理,以防止模拟器冻结
  • 添加 *_uninjectTracer 函数。

版本 1.10.0-rc01

2022 年 2 月 9 日

androidx.games:games-frame-pacing:1.10.0-rc01 已发布。版本 1.10.0-rc01 包含这些提交。

版本 1.10.0-beta01

2022 年 1 月 26 日

androidx.games:games-frame-pacing:1.10.0-beta01 已发布。版本 1.10.0-beta01 包含这些提交。

版本 1.10.0-alpha01

2021 年 12 月 15 日

androidx.games:games-frame-pacing:1.10.0-alpha01 已发布。版本 1.10.0-alpha01 包含这些提交。

新功能

  • 添加了 SwappyGL_uninjectTracer 函数。

API 更改

  • 使用 SwappyGL_uninjectTracer(const SwappyTracer *t) API 移除以前使用 SwappyGL_injectTracer 添加的回调。

Games Frame Pacing 1.9

版本 1.9.1

2021 年 10 月 13 日

androidx.games:games-frame-pacing:1.9.1 已发布。版本 1.9.1 包含这些提交。

Bug 修复

版本 1.9.0

2021 年 7 月 12 日

androidx.games:games-frame-pacing:1.9.0 已发布。版本 1.9.0 包含这些提交。

自 1.7.0 以来的重要更改

  • 已更新以匹配内部版本控制方案。

Games Frame Pacing 1.7.0

版本 1.7.0

2021 年 6 月 30 日

androidx.games:games-frame-pacing:1.7.0 已发布。版本 1.7.0 包含这些提交。

版本 1.7.0-rc01

2021 年 6 月 2 日

androidx.games:games-frame-pacing:1.7.0-rc01 已发布。版本 1.7.0-rc01 包含这些提交。

版本 1.7.0-beta02

2021 年 2 月 24 日

androidx.games:games-frame-pacing:1.7.0-beta02 已发布。

版本 1.7.0-beta01

2020 年 12 月 16 日

androidx.games:games-frame-pacing:1.7.0-beta01 已发布。

Games Performance Tuner 1.4.3

版本 2.0.0-rc01

2024 年 7 月 24 日

androidx.games:games-performance-tuner:2.0.0-rc01 已发布。版本 2.0.0-rc01 包含这些提交

版本 1.4.3

2021 年 7 月 12 日

androidx.games:games-performance-tuner:1.4.3 已发布。版本 1.4.3 包含这些提交。

自 1.1.0 以来的重要更改

  • 已更新以匹配内部版本控制方案。

Games Performance Tuner 1.1.0

版本 1.1.0

2021 年 6 月 30 日

androidx.games:games-performance-tuner:1.1.0 已发布。版本 1.1.0 包含这些提交。

版本 1.1.0-rc01

2021 年 6 月 2 日

androidx.games:games-performance-tuner:1.1.0-rc01 已发布。版本 1.1.0-rc01 包含这些提交。

版本 1.1.0-beta03

2021 年 4 月 21 日

androidx.games:games-performance-tuner:1.1.0-beta03 已发布。

版本 1.1.0-beta02

2021 年 2 月 24 日

androidx.games:games-performance-tuner:1.1.0-beta02 已发布。

版本 1.1.0-beta01

2020 年 12 月 16 日

androidx.games:games-performance-tuner:1.1.0-beta01 已发布。

版本 1.1.0-alpha01

androidx.games:games-performance-tuner:1.1.0-alpha01 已发布。

版本 1.0.0

版本 1.0.0-alpha02

2020 年 8 月 12 日

Android Gaming 库已更名为 Android Games 库。

androidx.gaming -> androidx.games

版本 1.0.0-alpha01

2020 年 6 月 10 日

androidx.games:1.0.0-alpha01 已发布。