Android 游戏

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

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

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

工件 稳定版 候选版本 Beta 版 Alpha 版
games-activity 3.0.5 - - 4.0.0-alpha01
games-controller 2.0.2 - - -
games-frame-pacing 2.1.2 - - -
games-memory-advice 2.0.1 - 2.1.0-beta01 -
games-text-input 3.0.4 - - 4.0.0-alpha01
games-performance-tuner 2.0.0 - - -
此库上次更新于:2024 年 10 月 16 日

要求

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:3.0.5"

    // 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:3.0.4"
}

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:3.0.5")

    // 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:3.0.4")
}
}

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

添加 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 函数

错误修复

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

Games-Memory-Advice 版本 2.0

版本 2.0.1

2023 年 9 月 20 日

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

错误修复

  • 修复了由于线程未附加到 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 包含这些提交。

新功能

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

错误修复

  • 修复了内存建议无法与共享 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 包含这些提交。

错误修复

  • 修复了一个错误,该错误导致库无法正确加载所需的 TensorFlow Lite 资产。

版本 2.0.0-beta02

2023 年 3 月 22 日

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

错误修复

  • 修复了一个错误,该错误阻止了库的静态版本正确链接。

版本 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 更改

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

错误修复

  • 库资产配置不正确现在会引发错误而不是崩溃。

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 包含 这些提交

错误修复

  • 修复了有无文本选择的情况下删除的功能。

Games-Activity 版本 4.0

版本 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 的预制件现在包含所有源文件。不再推荐 #include <GameActivity.cpp>。请改为链接到适当的静态或动态库,例如 CMake 中的 game-activity::game-activity_static。这些库打包在 AAR 文件中。

错误修复

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

Games-Activity 版本 3.0

版本 3.0.5

2024 年 8 月 7 日

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

错误修复

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

版本 3.0.4

2024 年 7 月 10 日

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

错误修复

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

版本 3.0.3

2024 年 4 月 17 日

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

错误修复

  • 修复了一些软件键盘的兼容性问题。

版本 3.0.2

2024 年 4 月 3 日

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

错误修复

  • 我们对 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 包含 这些提交

错误修复

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

版本 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 进行了更改。

错误修复

  • 修复了与旧版 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 包含这些提交。

错误修复

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

版本 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 包含以下提交。

错误修复

  • 改进了 32 位设备的兼容性。

版本 2.1.0-alpha01

2023 年 7 月 26 日

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

新功能

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

API 更改

  • 使用 int64_t 代替 long 作为 historicalEventTimes,以避免在 32 位系统上溢出
  • 添加 GameActivity_restartInput 方法
  • 添加一个原生回调来处理软件键盘可见性变化

错误修复

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

Games-Activity 版本 2.0

版本 2.0.2

2023 年 5 月 24 日

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

错误修复

  • GameActivityEvents 中的稳定性修复 (b/278017467)

版本 2.0.1

2023 年 4 月 5 日

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

错误修复

  • 修复了使用 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 包含以下提交。

错误修复

  • 修复了系统按钮处理。 (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 包含以下提交。

错误修复

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

版本 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)

错误修复

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

版本 1.2.1

2022 年 7 月 13 日

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

错误修复

  • 修复了先前版本中缺少 .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 以来重要更改

游戏活动

  • WindowInsets 监听和查询凹口和 IME 响应
  • 添加键和运动事件过滤器
  • 错误修复
    • 添加缺少的消息以与 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 包含以下提交。

错误修复

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

版本 1.1.0-beta02

2021 年 12 月 15 日

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

错误修复

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

版本 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);

错误修复

  • 避免使用所有按键事件:音量、相机等现在传递给系统。

版本 1.1.0-alpha01

2021 年 9 月 29 日

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

API 更改

  • onContentRectChanged 回调添加到 GameActivityCallbacks

错误修复

  • 将缺少的消息添加到 android_native_app_glue.h
    • APP_CMD_CONTENT_RECT_CHANGED
    • APP_CMD_WINDOW_REDRAW_NEEDED

游戏性能调优器 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 包含以下提交。

错误修复

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

版本 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。

错误修复

  • 修复了悬空指针问题。

版本 2.0.0-alpha04

2023 年 4 月 19 日

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

新功能

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

错误修复

  • 修复了一个错误,如果最大仪器密钥多于直方图计数,则库会崩溃。

版本 2.0.0-alpha03

2023 年 2 月 22 日

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

错误修复

  • 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;这将有助于预测要使用的正确质量级别/保真度参数。

游戏性能调优器 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 在没有活动加载组的情况下执行。

游戏性能调优器 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 密钥在 API<=23 上的内存损坏问题。

版本 1.5.0-rc01

2022 年 1 月 26 日

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

错误修复

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

版本 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

游戏活动版本 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 的主要功能

这是游戏活动、游戏控制器和游戏文本输入的第一个稳定版发布。有关更多信息,请参阅 AGDK 主页

版本 1.0.0-rc01

2021 年 7 月 12 日

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

错误修复

  • 修复了 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 已发布。

新功能

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

游戏控制器版本 2.0

版本 2.0.2

2024 年 6 月 12 日

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

错误修复

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

版本 2.0.1

2023 年 9 月 20 日

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

游戏控制器错误修复

  • 修复了 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

错误修复

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

游戏控制器版本 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 以来重要更改

游戏活动

  • WindowInsets 监听和查询凹口和 IME 响应
  • 添加键和运动事件过滤器
  • 错误修复
    • 添加缺少的消息以与 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

错误修复

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

游戏控制器版本 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 的主要功能

这是游戏活动、游戏控制器和游戏文本输入的第一个稳定版发布。有关更多信息,请参阅 AGDK 主页

版本 1.0.0-rc02

2021 年 7 月 21 日

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

错误修复

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

版本 1.0.0-rc01

2021 年 7 月 12 日

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

错误修复

  • 修复了与最新 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 函数访问。

错误修复

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

版本 1.0.0-alpha01

2021 年 6 月 16 日

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

新功能

  • 游戏控制器是一个新的库,它提供了一个 C API,用于检测、读取输入并与游戏控制器设备交互。

游戏文本输入 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 回调

错误修复

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

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 包含以下提交。

错误修复

  • 修复了先前版本中缺少 .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 包含以下提交。

错误修复

  • 修复瀑布和 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 的主要功能

这是游戏活动、游戏控制器和游戏文本输入的第一个稳定版发布。有关更多信息,请参阅 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 帧速率控制 版本 2.1

版本 2.1.2

2024 年 7 月 24 日

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

错误修复

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

版本 2.1.1

2024 年 7 月 10 日

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

错误修复

  • 从 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 包含以下提交。

错误修复

  • 如果 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,可以在仍然观察 CPU 和 GPU 时间的同时禁用 swappy 的帧速率控制影响。

API 更改

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

错误修复

  • 使用 Swappy GL API 时,对 GPU 绑定情况进行了性能改进。

Games 帧速率控制 版本 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

错误修复

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

Games 帧速率控制 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 包含以下提交。

错误修复

  • 修复 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 帧速率控制 1.9

版本 1.9.1

2021 年 10 月 13 日

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

错误修复

版本 1.9.0

2021 年 7 月 12 日

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

自 1.7.0 以来重要更改

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

Games 帧速率控制 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 性能调优器 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 以来重要更改

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

游戏性能调优器 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 游戏库重命名为 Android Games 库。

androidx.gaming -> androidx.games

版本 1.0.0-alpha01

2020年6月10日

androidx.games:1.0.0-alpha01 已发布。