Android 遊戲
Android 遊戲程式庫會仿照 Android 應用程式 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 版 - - -
遊戲畫面速度 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 版本建構應用程式:

  • r20.*
  • r21.*
  • 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 新增套件

如要提供匯入的遊戲遊戲套件,請將以下內容新增至主應用程式的 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 Game SDK 的標題檔案:

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

在主要應用程式的 CMakeLists.txt 檔案中,找到主要共用資料庫的 target_link_libraries。將參考資料新增至 Android Game SDK 靜態程式庫,將其加入共用資料庫中:

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

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 說明文件

Games-Memory-Advice 2.1 版

2.1.0-beta01 版

2023 年 11 月 29 日

發布 androidx.games:games-memory-advice:2.1.0-beta012.1.0-beta01 版包含此連結所列的修訂項目。

2.1.0-alpha01 版本

2023 年 11 月 15 日

發布 androidx.games:games-memory-advice:2.1.0-alpha012.1.0-alpha01 版本包含這些修訂版本。

新功能

  • 更新程式庫的記憶體模型,以便提供更準確的預測結果。

API 變更

  • 新增了 API getAvailableMemory(),可傳回可安全分配的記憶體量預估值 (以位元組為單位)。

2.1.0-alpha01 版本

2023 年 7 月 26 日

發布 androidx.games:games-memory-advice:2.1.0-alpha012.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.12.0.1 版包含此連結所列的修訂項目。

修正錯誤

  • 修正狀態監控器執行緒發生的當機問題,因為執行緒未附加至 JVM。

2.0.0 版

2023 年 9 月 6 日

發布 androidx.games:games-memory-advice:2.0.02.0.0 版包含此連結所列的修訂項目。

2.0.0 的主要功能

  • 新的機器學習模型已在這個版本中訓練並發布。
  • 實作可預測可用記憶體量的 API。

2.0.0-rc01 版

2023 年 7 月 26 日

發布 androidx.games:games-memory-advice:2.0.0-rc012.0.0-rc01 版包含以下修訂項目。

新功能

  • 加入新模型,以便更準確地預測剩餘記憶體。

修正錯誤

  • 修正記憶體建議無法搭配共用 STL 使用的情形。

2.0.0-beta04 版

2023 年 5 月 24 日

發布 androidx.games:games-memory-advice:2.0.0-beta042.0.0-beta04 版包含以下修訂項目。

新功能

  • 更新驅動程式庫的機器學習模型,較新款手機可因此取得更理想結果

2.0.0-beta03 版

2023 年 4 月 5 日

發布 androidx.games:games-memory-advice:2.0.0-beta032.0.0-beta03 版包含以下修訂項目。

修正錯誤

  • 修正程式庫無法正確載入必要的 TensorFlow Lite 資產的錯誤

2.0.0-beta02 版

2023 年 3 月 22 日

發布 androidx.games:games-memory-advice:2.0.0-beta022.0.0-beta02 版包含以下修訂項目。

修正錯誤

  • 修正無法正確連結靜態版本程式庫的錯誤

2.0.0-beta01 版

2023 年 2 月 22 日

發布 androidx.games:games-memory-advice:2.0.0-beta012.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-beta031.0.0-beta03 版包含此連結所列的修訂項目。

新功能

  • 沒有更新內容

1.0.0-beta01 版

2022 年 3 月 9 日

已釋出androidx.games:games-memory-advice:1.0.0-beta011.0.0-beta01 版包含此連結所列的修訂項目。

  • 自 1.0.0-alpha01 起沒有變更。

1.0.0-alpha01 版

2022 年 2 月 23 日

已釋出androidx.games:games-memory-advice:1.0.0-alpha011.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 現在支援 Left/Right 鍵。

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 版包含這些修訂項目

修正錯誤

  • 推出與 GameTextInput 3.0.4 版本相符的 GameActivity 新版本 (修正輸入內容中文字刪除功能的問題)。

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 做出了幾項修正,希望改善軟體和硬體鍵盤支援。此外,我們也修正了導致 GameTextInput 無法在沒有 GameActivity 的情況下使用的問題。

3.0.1 版本

March 20, 2024

發布 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-alpha022.1.0-alpha02 版包含以下修訂項目。

修正錯誤

  • 改善 32 位元裝置的相容性。

2.1.0-alpha01 版本

2023 年 7 月 26 日

發布 androidx.games:games-activity:2.1.0-alpha012.1.0-alpha01 版本包含這些修訂版本。

新功能

  • 提供覆寫 SurfaceView 例項建立作業的功能
  • 新增 SDK 版本回報

API 變更

  • 請使用 int64_t 取代 long,以避免在 32 位元系統上超出範圍
  • 新增 GameActivity_restartInput 方法
  • 新增原生回呼,處理軟體鍵盤的瀏覽權限變更

修正錯誤

  • 最佳化觸控事件處理作業
  • 正確銷毀 GameActivityMotionEven
  • 修正 GameActivityMotionEvent_getHistoricalAxisValue 索引計算
  • 修正動作篩選器的位元遮罩

Games-Activity 2.0 版

2.0.2 版

2023 年 5 月 24 日

發布 androidx.games:games-activity:2.0.22.0.2 版包含此連結所列的修訂項目。

修正錯誤

  • 修正 GameActivityEvents 中的穩定性問題 (b/278017467)

2.0.1 版

2023 年 4 月 5 日

發布 androidx.games:games-activity:2.0.12.0.1 版包含此連結所列的修訂項目。

修正錯誤

  • 修正 historicalEventTimes 記憶體較早釋放的問題。
  • 修正 32 位元系統 historicalEventTimesNanos 溢位問題

2.0.0 版

2023 年 3 月 8 日

發布 androidx.games:games-activity:2.0.0查看 2.0.0 版的修訂項

2.0.0 的主要功能

  • 過往事件時間介面經過調整,現已能克服 32 位元限制。
  • 為使用者提供設定變更項目存取權,例如螢幕方向。
  • contentRect 結構中提供最新資訊。
  • 提供更簡單的方式自訂預設 SurfaceView
  • 修正觸控事件的預設 OS 處理作業,例如處理系統按鈕。
  • 在觸控事件處理作業中,清除大部分 JNI 呼叫並進行最佳化。這項作業原本會影響效能。

2.0.0-rc01 版

2023 年 2 月 22 日

發布 androidx.games:games-activity:2.0.0-rc012.0.0-rc01 版包含以下修訂項目。

2.0.0-beta01 版

2023 年 2 月 8 日

發布 androidx.games:games-activity:2.0.0-beta012.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.21.2.2 版包含以下修訂項目。

修正錯誤

  • 現在可以在執行階段設定動作事件數量上限。

1.2.2-alpha01 版本

2022 年 11 月 9 日

發布了 androidx.games:games-activity:1.2.2-alpha011.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.01.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.01.1.0 版本包含以下修訂項目。

自 1.0.0 版以來的重要變更

Games Activity:

  • WindowInsets 監聽及查詢問題回報和 IME 回應
  • 新增金鑰和動作事件篩選器
  • 修正問題:
    • 新增缺少與 NativeActivity 相容的訊息
    • 修正 onNativeWindowSized 中的簽章
    • 修正輸入事件損失

1.1.0-rc01 版本

2022 年 2 月 9 日

已釋出「androidx.games:games-activity:1.1.0-rc01」和「androidx.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-beta031.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-beta011.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

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.0-beta01 以來沒有重大變更,我們只是將這個版本標示為穩定版。

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-alpha062.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-alpha032.0.0-alpha03 版包含以下修訂項目。

修正錯誤

  • Games-Performance-Tuner 已移至新的發布程序。行為應不會有任何變化。

2.0.0-alpha02 版本

2023 年 2 月 8 日

發布 androidx.games:games-performance-tuner:2.0.0-alpha022.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-alpha011.6.1-alpha01 版包含這些修訂項目。

新功能

  • 沒有更新內容

1.6.0 版

2022 年 6 月 15 日

發布 androidx.games:games-performance-tuner:1.6.01.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.01.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-rc011.5.0-rc01 版包含此連結所列的修訂項目

修正錯誤

  • 修正 API 金鑰中 API 金鑰損毀的記憶體<=23

1.5.0-beta02 版

2021 年 12 月 15 日

發布 androidx.games:games-performance-tuner:1.5.0-beta021.5.0-beta02 版包含以下修訂項目。

API 變更

  • 移除 TuningFork_Settings 的 ABI 中斷設定變更。

1.5.0-beta01 版

2021 年 9 月 29 日

發布 androidx.games:games-performance-tuner:1.5.0-beta011.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-alpha011.5.0-alpha01 版包含此連結所列的修訂項目

新功能

  • 您現在可以透過程式輔助 (而非設定檔案) 設定 APT 上傳作業的間隔時間。

API 變更

  • 新增函式:TuningFork_setAggregationStrategyInterval
  • 已將欄位新增至 TuningFork_Settings struct: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.01.0.0 版包含此連結所列的修訂項目。

1.0.0 的主要功能

這是「Game-Activity」、「Game-Controller」和「Game-Text-Input」的穩定的初始版本。詳情請參閱 AGDK 首頁

1.0.0-rc01 版

2021 年 7 月 12 日

發布 androidx.games:games-activity:1.0.0-rc011.0.0-rc01 版包含以下修訂項目。

修正錯誤

  • GameActivityCallbacks::onSaveInstanceState 的修正返回類型

1.0.0-beta01 版

2021 年 6 月 30 日

發布 androidx.games:games-activity:1.0.0-beta011.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 取代為 Android 與 C/C++ 遊戲的推薦方法。

Games-Controller 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.02.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 以上版本中動作事件的相容性問題

Games-Controller 1.1.0 版

1.1.0 版本

2022 年 2 月 23 日

發布 androidx.games:games-activity:1.1.0androidx.games:games-controller:1.1.01.1.0 版本包含以下修訂項目。

自 1.0.0 版以來的重要變更

Games Activity:

  • WindowInsets 監聽及查詢問題回報和 IME 回應
  • 新增金鑰和動作事件篩選器
  • 修正問題:
    • 新增缺少與 NativeActivity 相容的訊息
    • 修正 onNativeWindowSized 中的簽章
    • 修正輸入事件損失

1.1.0-rc01 版本

2022 年 2 月 9 日

發布了 androidx.games:games-controller:1.1.0-rc011.1.0-rc01 版包含此連結所列的修訂項目。

1.1.0-beta01 版本

2022 年 1 月 26 日

androidx.games:games-controller:1.1.0-beta011.1.0-alpha01起沒有變更。1.1.0-beta01 版本包含以下修訂項目。

1.1.0-alpha01 版本

2021 年 12 月 15 日

發布了 androidx.games:games-controller:1.1.0-alpha011.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 控制器的替代裝置 ID 資料庫項目
  • 新增 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.01.0.0 版包含此連結所列的修訂項目。

1.0.0 的主要功能

這是「Game-Activity」、「Game-Controller」和「Game-Text-Input」的穩定的初始版本。詳情請參閱 AGDK 首頁

1.0.0-rc02 版

2021 年 7 月 21 日

發布 androidx.games:games-controller:1.0.0-rc02查看 1.0.0-rc02 版的修訂項

修正錯誤

  • 修正會導致在空白、未使用的架構/版本組合中匯入 Prefab 失敗的封裝錯誤。

1.0.0-rc01 版

2021 年 7 月 12 日

發布 androidx.games:games-controller:1.0.0-rc011.0.0-rc01 版包含以下修訂項目。

修正錯誤

  • 修正最新 GameActivity 不相容的問題

1.0.0-beta01 版

2021 年 6 月 30 日

發布 androidx.games:games-controller:1.0.0-beta011.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

新功能

  • Games-Controller 是提供 C API 的新程式庫,用於偵測遊戲控制器裝置、讀取控制器輸入內容,以及與控制器進行互動。

Games-Text-Input 2.1

2.1.0-alpha01 版本

2023 年 7 月 26 日

發布 androidx.games:games-text-input:2.1.0-alpha012.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.02.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-alpha011.1.2-alpha01 版包含這些修訂項目。

新功能

  • 沒有更新內容

1.1.1 版

2022 年 7 月 13 日

發布 androidx.games:games-text-input:1.1.11.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-rc011.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 變更

  • 將 IME 插入功能新增至 GameTextInput

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.01.0.0 版包含此連結所列的修訂項目。

1.0.0 的主要功能

這是「Game-Activity」、「Game-Controller」和「Game-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-beta011.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.1 版本

2.1.2 版

2024 年 7 月 24 日

發布 androidx.games:games-frame-pacing:2.1.2。2.1.2 版包含這些修訂版本

修正錯誤

  • Swappy 現在會使用 API 33 中的 AChoreographer_postVsyncCallback,更準確地計算呈現時間。這項修正可解決 120 Hz 裝置的影格遺漏問題。

2.1.1 版

2024 年 7 月 10 日

發布 androidx.games:games-frame-pacing:2.1.1。2.1.1 版包含這些修訂版本

修正錯誤

  • 請從交換器中正確取消註冊螢幕事件監聽器,以免停止運作。
  • 使用已刪除互斥鎖修正 ChoreographerFilter::onSettingsChanged 中發生的當機問題。

2.1.0 版

2023 年 11 月 15 日

發布 androidx.games:games-frame-pacing:2.1.02.1.0 版包含這些修訂版本。

2.1.0-rc01 版

2023 年 9 月 20 日

發布 androidx.games:games-frame-pacing:2.1.0-rc012.1.0-rc01 版包含以下修訂項目。

2.1.0-beta01 版

2023 年 5 月 24 日

發布 androidx.games:games-frame-pacing:2.1.0-beta012.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,可在停用 Swappy 的幀率影響時,仍觀察 CPU 和 GPU 的時間。

API 變更

  • SwappyGL_resetFramePacing/SwappyVk_resetFramePacing 現在可用於重設內部影格間隔狀態。幀率調整現在只會考量從呼叫重設 API 的時間點開始的資料。
  • SwappyGL_enableFramePacing/SwappyVk_enableFramePacing 現在可用於啟用/停用 Swappy 的幀率。如果停用這項設定
  • SwappyGL_enableBlockingWait/SwappyVk_enableBlockingWait 可用於控制在停用影格間隔時,是否會對上一個影格的 GPU 工作進行阻斷等待。

修正錯誤

  • 使用 Swappy GL API 時,針對 GPU 繫結案例改善效能。

Games Frame Pacing 2.0 版

2.0.0 版

2023 年 3 月 8 日

發布 androidx.games:games-frame-pacing:2.0.02.0.0 版包含此連結所列的修訂項目。

自 1.10.1 版以來的重要異動

  • 建構系統經歷重大變更,因此每個 SDK/NDK 版本只會產生一個程式庫,而非多個。
  • 新增 Vulkan 框架統計資料。
  • 新增用於清除影格統計資料的新 API。
  • 在發布模式下,記錄全為無通知,如有需要,您可以在偵錯模式中啟用。

2.0.0-rc01 版

2023 年 2 月 22 日

發布 androidx.games:games-frame-pacing:2.0.0-rc012.0.0-rc01 版包含以下修訂項目。

新功能

  • 記錄現在隱藏在編譯旗標後方。根據預設,程式庫的發布子版本不會有任何記錄,而程式庫的偵錯版本則會開啟所有記錄功能。

2.0.0-beta01 版

2023 年 2 月 8 日

發布 androidx.games:games-frame-pacing:2.0.0-beta012.0.0-beta01 版包含此連結所列的修訂項目。

新功能

  • 推出新的 API 以清除影格統計資料。

API 變更

  • 新增 SwappyGL_clearStatsSwappyGL_clearStats API。

2.0.0-alpha01 版本

2023 年 1 月 11 日

發布 androidx.games:games-frame-pacing:2.0.0-alpha012.0.0-alpha01 版本包含這些修訂版本。

新功能

  • 新增 Vulkan 影格統計資料

API 變更

  • 因建構檔案重構而增加主要版本
  • 新增 3 個 API:SwappyVk_enableStatsSwappyVk_recordFrameStartSwappyVk_getStats

修正錯誤

  • 僅針對自動交換模式套用門檻 (Ic0786)

Games Frame Pacing 1.10

1.10.2-alpha01 版

2022 年 11 月 9 日

發布了 androidx.games:games-frame-pacing:1.10.2-alpha011.10.2-alpha01 版本包含這些修訂項目。

新功能

  • 沒有更新內容

1.10.1 版本

2022 年 6 月 15 日

發布 androidx.games:games-frame-pacing:1.10.11.10.1 版包含以下修訂項目。

修正錯誤

  • 修正 swappy 無法使用 ndk <23 和 >17 建構的問題。
  • 曝露 API,以便擷取螢幕支援的重新整理頻率。

1.10.0 版本

2022 年 2 月 23 日

已釋出androidx.games:games-frame-pacing:1.10.01.10.0 版包含以下修訂項目。

自 1.9.0 版以來的重要變更

  • 忽略輪詢器篩選器輸入內容,然後設定更平穩的配置,避免模擬器凍結
  • 新增 *_uninjectTracer 函式。

1.10.0-rc01 版

2022 年 2 月 9 日

已釋出androidx.games:games-frame-pacing:1.10.0-rc011.10.0-rc01 版包含以下修訂項目。

1.10.0-beta01 版

2022 年 1 月 26 日

已釋出androidx.games:games-frame-pacing:1.10.0-beta011.10.0-beta01 版包含以下修訂項目。

1.10.0-alpha01 版本

2021 年 12 月 15 日

發布 androidx.games:games-frame-pacing:1.10.0-alpha011.10.0-alpha01 版本包含這些修訂項目。

新功能

  • 新增 SwappyGL_uninjectTracer 函式。

API 變更

  • 使用SwappyGL_uninjectTracer(const SwappyTracer *t)API移除先前使用SwappyGL_injectTracer新增的回呼。

遊戲畫面速度 1.9

1.9.1 版

2021年10月13日

發布 androidx.games:games-frame-pacing:1.9.11.9.1 版包含以下修訂項目。

修正錯誤

1.9.0 版

2021 年 7 月 12 日

發布 androidx.games:games-frame-pacing:1.9.01.9.0 版包含以下修訂項目。

自 1.7.0 版以來的重要變更

  • 已配合內部版管理架構更新。

遊戲畫面速度 1.7.0

1.7.0 版

2021 年 6 月 30 日

已釋出androidx.games:games-frame-pacing:1.7.01.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.31.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 遊戲程式庫。

androidx.gaming -> androidx.games

1.0.0-alpha01 版

2020年6月10日

已釋出androidx.games:1.0.0-alpha01。