Juegos para Android

La biblioteca de juegos de Android duplica el SDK de juegos de Android, que está disponible como descarga de objeto binario. Puedes usar la biblioteca de AndroidX en lugar de descargar e integrar manualmente el SDK de juegos de Android en tu compilación.

Para obtener más información sobre el SDK de juegos de Android, consulta la documentación del SDK y las notas de la versión del SDK.

En esta tabla, se enumeran todos los artefactos del grupo androidx.games.

Artefacto Versión estable Versión potencial Versión beta Versión alfa
games-activity 3.0.1 - - -
games-controller 2.0.1 - - -
games-frame-pacing 2.1.0 - - -
games-memory-advice 2.0.1 - 2.1.0-beta01 -
games-text-input 3.0.1 - - -
games-performance-tuner - - 2.0.0-beta01 -
Esta biblioteca se actualizó por última vez el 20 de marzo de 2024.

Requisitos

games-memory-advice

La API de MemoryAdvice requiere que tu aplicación se compile con una de las siguientes versiones de NDK:

  • r20.*
  • r21.*
  • r23.*

Cómo declarar dependencias

Para agregar una dependencia en el juego, debes agregar el repositorio de Maven de Google a tu proyecto. Lee el repositorio Maven de Google para obtener más información.

Agrega las dependencias de los artefactos que necesites en el archivo build.gradle de tu app o módulo. La biblioteca games-activity integró la misma versión de la biblioteca game-text-input, por lo que las apps de GameActivity no pueden volver a incluir la dependencia 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.0"

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

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

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

    // 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.1"
}

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.0")

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

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

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

    // 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.1")
}
}

Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.

Cómo agregar propiedades de Gradle

Es posible que debas agregar propiedades al archivo gradle.properties ubicado en el mismo directorio que el archivo build.gradle de tu app (o módulo). Si el archivo gradle.properties no existe, créalo.

Si usas Android Studio 4.0, asegúrate de que gradle.properties contenga las siguientes líneas:

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

Si usas Android Studio 4.1 o versiones posteriores, asegúrate de que gradle.properties incluya las siguientes líneas:

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

Cómo agregar paquetes con CMake

Para que los paquetes del SDK de juegos importados estén disponibles, agrega lo siguiente al archivo CMakeLists.txt de tu app principal:

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

Esto te permitirá incluir archivos de encabezado del SDK de juegos de Android en el código del juego:

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

En el archivo CMakeLists.txt de tu app principal, busca el objeto target_link_libraries para la biblioteca compartida principal. Agrega las referencias a las bibliotecas estáticas del SDK de juegos de Android para incluirlas en tu biblioteca compartida:

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

Comentarios

Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.

Crear un error nuevo

Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.

Games-Memory-Advice versión 2.1

Versión 2.1.0-beta01

29 de noviembre de 2023

Lanzamiento de androidx.games:games-memory-advice:2.1.0-beta01. La versión 2.1.0-beta01 contiene estas confirmaciones.

Versión 2.1.0-alpha01

15 de noviembre de 2023

Lanzamiento de androidx.games:games-memory-advice:2.1.0-alpha01. La versión 2.1.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Se actualizó el modelo de memoria de la biblioteca para obtener mejores predicciones.

Cambios en la API

  • Se agregó una nueva API de getAvailableMemory() que muestra una estimación en bytes de la cantidad de memoria que se puede asignar de forma segura.

Versión 2.1.0-alpha01

26 de julio de 2023

Lanzamiento de androidx.games:games-memory-advice:2.1.0-alpha01. La versión 2.1.0-alpha01 contiene estas confirmaciones.

Cambios en la API

  • Agregar función GetAvailableMemory

Correcciones de errores

  • Actualiza el modelo de Memory Advice
  • Se corrigió el destino de compilación compartido de memory_advice

Games-Memory-Advice versión 2.0

Versión 2.0.1

20 de septiembre de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.1. La versión 2.0.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió la falla que se producía en el subproceso del observador de estado debido a que el subproceso no se adjuntaba a la JVM

Versión 2.0.0

6 de septiembre de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0. La versión 2.0.0 contiene estas confirmaciones.

Funciones principales de la versión 2.0.0

  • En esta versión, se entrenó y lanzó un nuevo modelo de AA.
  • Se implementa una API para predecir la cantidad de memoria libre.

Versión 2.0.0-rc01

26 de julio de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-rc01. La versión 2.0.0-rc01 contiene estas confirmaciones.

Nuevas funciones

  • Se incluyó un modelo nuevo para predecir mejor la memoria restante.

Correcciones de errores

  • Se corrigió Memory Advice que no funcionaba con una STL compartida.

Versión 2.0.0-beta04

24 de mayo de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-beta04. La versión 2.0.0-beta04 contiene estas confirmaciones.

Nuevas funciones

  • Se actualizó el modelo de aprendizaje automático que potencia la biblioteca, lo que mejorará los resultados de los teléfonos más nuevos.

Versión 2.0.0-beta03

5 de abril de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-beta03. La versión 2.0.0-beta03 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió un error en el que la biblioteca no podía cargar correctamente los recursos necesarios de TensorFlow Lite.

Versión 2.0.0-beta02

22 de marzo de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-beta02. La versión 2.0.0-beta02 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió un error que impedía que la versión estática de la biblioteca se vinculara correctamente.

Versión 2.0.0-beta01

22 de febrero de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-beta01. La versión 2.0.0-beta01 contiene estas confirmaciones.

Nuevas funciones

  • No hay cambios nuevos.

Versión 2.0.0-alpha01

8 de febrero de 2023

Lanzamiento de androidx.games:games-memory-advice:2.0.0-alpha01. La versión 2.0.0-alpha01 contiene estas confirmaciones.

Cambios en la API

  • Se aumentó la versión principal debido a la refactorización de los archivos de compilación.

Correcciones de errores

  • La configuración incorrecta de los elementos de la biblioteca ahora muestra un error en lugar de fallar.

Games-Memory-Advice versión 1.0.0

Versión 1.0.0-beta03

9 de noviembre de 2022

Lanzamiento de androidx.games:games-memory-advice:1.0.0-beta03. La versión 1.0.0-beta03 contiene estas confirmaciones.

Nuevas funciones

  • No hay cambios nuevos.

Versión 1.0.0-beta01

9 de marzo de 2022

Lanzamiento de androidx.games:games-memory-advice:1.0.0-beta01. La versión 1.0.0-beta01 contiene estas confirmaciones.

  • No hay cambios desde la versión 1.1.0-alpha01.

Versión 1.0.0-alpha01

23 de febrero de 2022

Lanzamiento de androidx.games:games-memory-advice:1.0.0-alpha01. La versión 1.0.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Esta biblioteca C proporciona la posibilidad de buscar y recibir devoluciones de llamada para los cambios en el estado de memoria de un dispositivo que ejecuta un juego.

Cambios en la API

  • Esta es la versión inicial de la biblioteca de consejos de memoria. Consulta el encabezado en include/memory_advice/memory_advice.h para ver la API completa.

Contribución externa

Games-Activity versión 3.0

Versión 3.0.1

20 de marzo de 2024

Lanzamiento de androidx.games:games-activity:3.0.1 y androidx.games:games-text-input:3.0.1. La versión 3.0.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió un problema con los caracteres especiales que se escriben y se muestran.

Versión 3.0.0

6 de marzo de 2024

Lanzamiento de androidx.games:games-activity:3.0.0 y androidx.games:games-text-input:3.0.0. La versión 3.0.0 contiene estas confirmaciones.

Funciones principales de la versión 3.0.0

  • Se rediseñó GameTextInput para que esté listo para usarse en los juegos.
  • Se modificaron algunas interfaces de ambas bibliotecas con respecto a la versión 2.0.0.

Correcciones de errores

  • Se corrigieron problemas de compatibilidad con NDK anteriores.
  • Problemas de compilación de Windows corregidos

Versión 3.0.0-rc01

21 de febrero de 2024

Lanzamiento de androidx.games:games-activity:3.0.0-rc01 y androidx.games:games-text-input:3.0.0-rc01. La versión 3.0.0-rc01 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió el bloqueo por el que el generador de bucles no manejaba correctamente los eventos del teclado.

Versión 3.0.0-beta01

29 de noviembre de 2023

Lanzamiento de androidx.games:games-activity:3.0.0-beta01 y androidx.games:games-text-input:3.0.0-beta01. La versión 3.0.0-beta01 contiene estas confirmaciones.

Versión 3.0.0-alpha01

15 de noviembre de 2023

Lanzamiento de androidx.games:games-activity:3.0.0-alpha01 y androidx.games:games-text-input:3.0.0-alpha01. La versión 3.0.0-alpha01 contiene estas confirmaciones.

Cambios en la API

  • Las estructuras GameActivityMotionEvent y GameActivityCallbacks cambiaron sus tamaños.
  • onEditorAction cambia el tipo de datos que se muestra de booleano a nulo.
  • setImeEditorInfo ahora espera parámetros de enumeración, no números enteros
  • Las funciones internas de GameActivityEvents se mueven a GameActivityEvents_internal.h.
  • Los tipos de entrada de GameTextInput también son enumeraciones, no números enteros.

Games-Activity versión 2.1

Versión 2.1.0-alpha02

6 de septiembre de 2023

Lanzamiento de androidx.games:games-activity:2.1.0-alpha02 y androidx.games:games-text-input:2.1.0-alpha02. La versión 2.1.0-alpha02 contiene estas confirmaciones.

Correcciones de errores

  • Se mejoró la compatibilidad con dispositivos de 32 bits.

Versión 2.1.0-alpha01

26 de julio de 2023

Lanzamiento de androidx.games:games-activity:2.1.0-alpha01. La versión 2.1.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Proporcionar la capacidad de anular la creación de la instancia SurfaceView
  • Agrega informes de la versión del SDK

Cambios en la API

  • Usa int64_t en lugar de long para historicalEventTimes para evitar la sobrecarga en sistemas de 32 bits.
  • Agrega el método GameActivity_restartInput
  • Se agregó una devolución de llamada nativa para controlar el cambio de visibilidad del teclado en pantalla.

Correcciones de errores

  • Optimiza el control de eventos táctiles
  • Destrucción correcta de un GameActivityMotionEven
  • Corrige el cálculo del índice GameActivityMotionEvent_getHistoricalAxisValue
  • Cómo corregir las máscaras de bits para el filtro de movimiento

Games-Activity versión 2.0

Versión 2.0.2

24 de mayo de 2023

Lanzamiento de androidx.games:games-activity:2.0.2. La versión 2.0.2 contiene estas confirmaciones.

Correcciones de errores

  • Correcciones de estabilidad en GameActivityEvents (b/278017467).

Versión 2.0.1

5 de abril de 2023

Lanzamiento de androidx.games:games-activity:2.0.1. La versión 2.0.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió la liberación anticipada de memoria con historicalEventTimes.
  • Se solucionó un problema con el desbordamiento de historicalEventTimesNanos en sistemas de 32 bits.

Versión 2.0.0

8 de marzo de 2023

Lanzamiento de androidx.games:games-activity:2.0.0. La versión 2.0.0 contiene estas confirmaciones.

Funciones principales de la versión 2.0.0

  • Se cambió la interfaz para que los tiempos de eventos históricos superen el límite de 32 bits.
  • Se proporcionó al usuario acceso a cambios de configuración, como la orientación.
  • Se proporcionó información actualizada en la estructura contentRect.
  • Se proporcionó una forma más fácil de personalizar el SurfaceView predeterminado
  • Se corrigió el control predeterminado del SO de eventos táctiles, como el control de botones del sistema.
  • Se optimizó la mayoría de las llamadas JNI en el manejo de eventos táctiles; esto se usa para afectar el rendimiento.

Versión 2.0.0-rc01

22 de febrero de 2023

Se lanzó androidx.games:games-activity:2.0.0-rc01. La versión 2.0.0-rc01 contiene estas confirmaciones.

Versión 2.0.0-beta01

8 de febrero de 2023

Lanzamiento de androidx.games:games-activity:2.0.0-beta01. La versión 2.0.0-beta01 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió el control de botones del sistema (2a103e).

Versión 2.0.0-alpha01

11 de enero de 2023

Se lanzó androidx.games:games-activity:2.0.0-alpha01 sin cambios. La versión 2.0.0-alpha01 contiene estas confirmaciones.

Games-Activity versión 1.2

Versión 1.2.2

7 de diciembre de 2022

Lanzamiento de androidx.games:games-activity:1.2.2. La versión 1.2.2 contiene estas confirmaciones.

Correcciones de errores

  • Ahora se puede establecer la cantidad máxima de eventos de movimiento durante el tiempo de ejecución.

Versión 1.2.2-alpha01

9 de noviembre de 2022

Lanzamiento de androidx.games:games-activity:1.2.2-alpha01. La versión 1.2.2-alpha01 contiene estas confirmaciones.

Cambios en la API

  • La API ahora también contiene información de la versión con el formato de GAMEACTIVITY_PACKED_VERSION (I287e6).
  • Se agregó una devolución de llamada de onContentRectChanged, a la que se llama cuando cambia el rectángulo de la ventana en la que se debe colocar el contenido (I81396).

Correcciones de errores

  • Se corrigió el desbordamiento del búfer de eventos. inputBuffer->keyEvents y motionEvents ahora son búferes asignados de forma dinámica (Ic00f6).
  • Falla con facilidad si se queda sin memoria. Se agregó el manejo de errores de realloc() durante el cambio de tamaño de los búferes.

Versión 1.2.1

13 de julio de 2022

Lanzamiento de androidx.games:games-activity:1.2.1. La versión 1.2.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigieron errores que se generaban por la falta del archivo .aar en la versión anterior.

Versión 1.2.0

15 de junio de 2022

Lanzamiento de androidx.games:games-activity:1.2.0. La versión 1.2.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.1.0

  • Permite que las clases derivadas de GameActivity controlen la carga de la biblioteca nativa.
  • Carga siempre la biblioteca nativa en GameActivity.onCreate.
  • Usa como resguardo la biblioteca de carga con el nombre "main" si no se encontró ninguna otra biblioteca.

Games-Activity versión 1.1

Versión 1.1.0

23 de febrero de 2022

Lanzamiento de androidx.games:games-activity:1.1.0 y androidx.games:games-controller:1.1.0. La versión 1.1.0 contiene estas confirmaciones.

Cambios importantes desde 1.0.0

Actividad del juego:

  • WindowInsets detecta y consulta las respuestas de IME y recorte.
  • Se agregaron filtros de eventos de teclas y movimiento.
  • Correcciones de errores:
    • Se agregaron los mensajes que faltaban para la compatibilidad con NativeActivity.
    • Se corrigió la firma de onNativeWindowResized.
    • Se corrigieron las pérdidas de eventos de entrada.

Versión 1.1.0-rc01

9 de febrero de 2022

Lanzamiento de androidx.games:games-activity:1.1.0-rc01 y androidx.games:games-controller:1.1.0-rc01. La versión 1.1.0-rc01 contiene estas confirmaciones.

Versión 1.1.0-beta03

26 de enero de 2022

Lanzamiento de androidx.games:games-activity:1.1.0-beta03. La versión 1.1.0-beta03 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió la firma de onNativeWindowResized
  • Se mantiene el control de la ventana nativa en onSurfaceChanged

Versión 1.1.0-beta02

15 de diciembre de 2021

Lanzamiento de androidx.games:games-activity:1.1.0-beta02. La versión 1.1.0-beta02 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió la condición de carrera en la configuración del filtro de eventos.

Versión 1.1.0-beta01

17 de noviembre de 2021

Lanzamiento de androidx.games:games-activity:1.1.0-beta01. La versión 1.1.0-beta01 contiene estas confirmaciones.

Nuevas funciones

  • Se agregó compatibilidad para consultar las inserciones de ventana y detectar cambios de estas. De esta manera, se permite que los juegos reaccionen a las ventanas emergentes del IME y controlen las inserciones de cascada y recorte de cámara.

Cambios en la API

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

Correcciones de errores

  • Evita consumir todos los eventos clave: ahora el volumen, la cámara, etc. se pasan al sistema.

Versión 1.1.0-alpha01

29 de septiembre de 2021

Lanzamiento de androidx.games:games-activity:1.1.0-alpha01. La versión 1.1.0-alpha01 contiene estas confirmaciones.

Cambios en la API

  • Se agregó la devolución de llamada onContentRectChanged a GameActivityCallbacks.

Correcciones de errores

  • Se agregaron mensajes faltantes a android_native_app_glue.h:
    • APP_CMD_CONTENT_RECT_CHANGED
    • APP_CMD_WINDOW_REDRAW_NEEDED

Games Performance Tuner 2.0

Versión 2.0.0-beta01

10 de enero de 2024

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-beta01 sin modificaciones con respecto a la última versión alfa. La versión 2.0.0-beta01 contiene estas confirmaciones.

Versión 2.0.0-alpha07

29 de noviembre de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha07. La versión 2.0.0-alpha07 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigieron los informes de telemetría de memoria que a veces informaban valores incorrectos.

Versión 2.0.0-alpha06

1 de noviembre de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha06. La versión 2.0.0-alpha06 contiene estas confirmaciones.

Versión 2.0.0-alpha05

23 de agosto de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha05. La versión 2.0.0-alpha05 contiene estas confirmaciones.

Nuevas funciones

  • Se migró la biblioteca de Protobuf a Protobuf Lite.

Correcciones de errores

  • Se corrigieron errores relacionados con el puntero colgante.

Versión 2.0.0-alpha04

19 de abril de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha04. La versión 2.0.0-alpha04 contiene estas confirmaciones.

Nuevas funciones

  • Se actualizaron las funciones de recopilación de telemetría en la biblioteca, lo que permite generar informes más detallados de los tiempos de renderización de fotogramas.

Correcciones de errores

  • Se corrigió un error por el que fallaba la biblioteca si la cantidad máxima de teclas de instrumentación superaba el recuento de histogramas.

Versión 2.0.0-alpha03

22 de febrero de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha03. La versión 2.0.0-alpha03 contiene estas confirmaciones.

Correcciones de errores

  • Se trasladó Games-Performance-Tuner a un nuevo proceso de lanzamiento. No debería haber cambios de comportamiento.

Versión 2.0.0-alpha02

8 de febrero de 2023

Lanzamiento de androidx.games:games-performance-tuner:2.0.0-alpha02. La versión 2.0.0-alpha02 contiene estas confirmaciones.

Cambios en la API

  • Se agregó la API de TuningFork_predictQualityLevels, lo cual ayudará a predecir los parámetros de nivel de calidad y fidelidad correctos.

Games Performance Tuner 1.6

Versión 1.6.1-alpha01

9 de noviembre de 2022

Lanzamiento de androidx.games:games-performance-tuner:1.6.1-alpha01. La versión 1.6.1-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • No hay cambios nuevos.

Versión 1.6.0

15 de junio de 2022

Lanzamiento de androidx.games:games-performance-tuner:1.6.0. La versión 1.6.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.5.0

  • Se corrigió el error getpid que mostraba 0 mientras se intentaba obtener la telemetría de memoria.
  • Se detuvo la ejecución de StopLoadingGroup sin un grupo de carga activo.

Games Performance Tuner 1.5.0

Versión 1.5.0

9 de febrero de 2022

Lanzamiento de androidx.games:games-performance-tuner:1.5.0. La versión 1.5.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.4.0

  • Cambia de manera programática el intervalo entre cargas, en lugar de codificarlo de forma fija en la configuración inicial.
    • Se agregó la función TuningFork_setAggregationStrategyInterval.
  • Se corrigió la corrupción de memoria en la clave de API en la API<=23.

Versión 1.5.0-rc01

26 de enero de 2022

Lanzamiento de androidx.games:games-performance-tuner:1.5.0-rc01. La versión 1.5.0-rc01 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió la corrupción de memoria en la clave de API en la API<=23.

Versión 1.5.0-beta02

15 de diciembre de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.5.0-beta02. La versión 1.5.0-beta02 contiene estas confirmaciones.

Cambios en la API

  • Quita el cambio rotundo de ABI de TuningFork_Settings.

Versión 1.5.0-beta01

29 de septiembre de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.5.0-beta01. La versión 1.5.0-beta01 contiene estas confirmaciones.

Nuevas funciones

  • No se realizaron cambios en la versión alfa. Esa actualización incluía los siguiente:
    • Cambia de manera programática el intervalo entre cargas, en lugar de codificarlo de forma fija en la configuración inicial.

Cambios en la API

  • No se realizaron cambios en la versión alfa. Esa actualización incluía los siguiente:
    • Nueva función: TuningFork_setAggregationStrategyInterval
    • Nuevo campo en TuningFork_Settings: aggregation_strategy_intervalms_or_count

Versión 1.5.0-alpha01

18 de agosto de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.5.0-alpha01. La versión 1.5.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Ahora es posible establecer el intervalo entre cargas de APT de forma programática, en lugar de usar el archivo de configuración.

Cambios en la API

  • Se agregó la función TuningFork_setAggregationStrategyInterval.
  • Se agregó el campo a la estructura de TuningFork_Settings: aggregation_strategy_intervalms_or_count

Games-Activity versión 1.0.0

Versión 1.0.0

4 de agosto de 2021

Lanzamiento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 y androidx.games:games-text-input:1.0.0. La versión 1.0.0 contiene estas confirmaciones.

Funciones principales de la versión 1.0.0

Esta es la versión inicial para estabilizar Games-Activity, Games-Controller y Games-Text-Input. Para obtener más información, consulta la página principal de AGDK.

Versión 1.0.0-rc01

12 de julio de 2021

Lanzamiento de androidx.games:games-activity:1.0.0-rc01. La versión 1.0.0-rc01 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió el tipo de datos que se muestra en GameActivityCallbacks::onSaveInstanceState.

Versión 1.0.0-beta01

30 de junio de 2021

Lanzamiento de androidx.games:games-activity:1.0.0-beta01. La Versión 1.0.0-beta01 contiene estas confirmaciones.

Cambios en la API

  • Se cambió el nombre de GameActivityInputInfo a GameActivityPointerAxes.
  • Ahora, la devolución de llamada onNativeWindowResized brinda el ancho y la altura de la ventana.
  • Se quitó la devolución de llamada onContentRectChanged.
  • Se cambió el nombre de onLowMemory a onTrimMemory.
  • Se quitó GameActivity_setWindowFormat.
  • Se mejoró el modelo de propiedad para los punteros GameActivityMotionEvents y GameActivityMotionEvent.
  • Se mejoró el modelo de propiedad del estado del usuario en la devolución de llamada onSaveInstanceState.

Versión 1.0.0-alpha01

16 de junio de 2021

Lanzamiento de androidx.games:games-activity:1.0.0-alpha01.

Nuevas funciones

  • Games-Activity es una nueva biblioteca que reemplaza a NativeActivity como la forma recomendada de integrar un juego de C/C++ con Android.

Games-Controller versión 2.0.

Versión 2.0.1

20 de septiembre de 2023

Lanzamiento de androidx.games: games-controller: 2.0.1. La versión 2.0.1 contiene estas confirmaciones.

Correcciones de errores de controles de juegos:

  • Se corrigió la condición poco frecuente NullReferenceException en el controlador onInputDeviceChanged.
  • Soluciona el problema para evitar que ciertos teclados USB se registren incorrectamente como controles de juegos.

Versión 2.0.0

8 de marzo de 2023

Lanzamiento de androidx.games:games-controller:2.0.0. La versión 2.0.0 contiene estas confirmaciones.

Funciones principales de la versión 2.0.0

  • Se agregó la capacidad de detectar el estado de conexión de los teclados de hardware.
  • Se agregó la capacidad de informar datos de movimiento (acelerómetro/giroscopio) desde el dispositivo principal (es decir, el teléfono celular) y los controles.
  • Se cambió la API y el formato de la base de datos de definición del controlador para reducir el uso de memoria y admitir funciones adicionales.

Versión 2.0.0-alpha01

11 de enero de 2023

Lanzamiento de androidx.games:games-controller:2.0.0-alpha01. La versión 2.0.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Detección de hardware de teclado
  • Compatibilidad con informes integrados de datos de movimiento del sensor (es decir, recepción de datos del giroscopio y el acelerómetro desde el propio teléfono).
  • Nuevo formato de datos de asignación del controlador optimizado

Cambios en la API

  • Nuevas llamadas a la API para el hardware de teclado: Paddleboat_getPhysicalKeyboardStatus y Paddleboat_setPhysicalKeyboardStatusCallback
  • Nuevas llamadas a la API para los informes integrados de datos de movimiento del sensor: Paddleboat_getIntegratedMotionSensorFlags y Paddleboat_setMotionDataCallbackWithIntegratedFlags
  • Nuevas llamadas a la API para el formato revisado de datos de asignación de controles: Paddleboat_addControllerRemapDataFromFd,Paddleboat_addControllerRemapDataFromFileBuffer
  • Las llamadas a la API de asignación que dejaron de estar disponibles: Paddleboat_addControllerRemapData y Paddleboat_getControllerRemapTableData

Correcciones de errores

  • Se solucionó el problema de compatibilidad con eventos de movimiento de GameActivity 1.2.2 y versiones posteriores.

Games-Controller versión 1.1.0

Versión 1.1.0

23 de febrero de 2022

Lanzamiento de androidx.games:games-activity:1.1.0 y androidx.games:games-controller:1.1.0. La versión 1.1.0 contiene estas confirmaciones.

Cambios importantes desde 1.0.0

Actividad del juego:

  • WindowInsets detecta y consulta las respuestas de IME y recorte.
  • Se agregaron filtros de eventos de teclas y movimiento.
  • Correcciones de errores:
    • Se agregaron los mensajes que faltaban para la compatibilidad con NativeActivity.
    • Se corrigió la firma de onNativeWindowResized.
    • Se corrigieron las pérdidas de eventos de entrada.

Versión 1.1.0-rc01

9 de febrero de 2022

Lanzamiento de androidx.games:games-controller:1.1.0-rc01. La versión 1.1.0-rc01 contiene estas confirmaciones.

Versión 1.1.0-beta01

26 de enero de 2022

Lanzamiento de androidx.games:games-controller:1.1.0-beta01 sin cambios desde 1.1.0-alpha01. La versión 1.1.0-beta01 contiene estas confirmaciones.

Versión 1.1.0-alpha01

15 de diciembre de 2021

Lanzamiento de androidx.games:games-controller:1.1.0-alpha01. La versión 1.1.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

Se agregó compatibilidad con el estado de la batería, la vibración de dos motores, el control de luz y los informes de ejes de movimiento en controladores compatibles cuando se ejecuta en Android S o versiones posteriores.

Cambios en la API

  • Se agregó la función Paddleboat_setMotionDataCallback para registrar devoluciones de llamada de datos de movimiento del controlador.
  • Se agregó la función Paddleboat_setControllerLight para cambiar la configuración de las luces del control.
  • Se agregó la estructura Paddleboat_Controller_Battery a Paddleboat_Controller_Data
  • Estructuras nuevas:
    • Paddleboat_Controller_Battery
    • Paddleboat_Motion_Data
  • Enumeraciones nuevas:
    • Paddleboat_BatteryStatus
    • Paddleboat_LightType
    • Paddleboat_Motion_Type
  • Nuevas marcas de control:
    • PADDLEBOAT_CONTROLLER_FLAG_ACCELEROMETER
    • PADDLEBOAT_CONTROLLER_FLAG_GYROSCOPE
    • PADDLEBOAT_CONTROLLER_FLAG_LIGHT_PLAYER
    • PADDLEBOAT_CONTROLLER_FLAG_LIGHT_RGB
    • PADDLEBOAT_CONTROLLER_FLAG_BATTERY

Correcciones de errores

  • Se agregó la entrada alternativa de la base de datos deviceId para el controlador de PS4.
  • Se agregó una API >=31 para la entrada de la base de datos del controlador de PS5.

Games-Controller versión 1.0.0

Versión 1.0.0

4 de agosto de 2021

Lanzamiento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 y androidx.games:games-text-input:1.0.0. La versión 1.0.0 contiene estas confirmaciones.

Funciones principales de la versión 1.0.0

Esta es la versión inicial para estabilizar Games-Activity, Games-Controller y Games-Text-Input. Para obtener más información, consulta la página principal de AGDK.

Versión 1.0.0-rc02

21 de julio de 2021

Lanzamiento de androidx.games:games-controller:1.0.0-rc02. La versión 1.0.0-rc02 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió el error de empaquetado que causaba que la importación de Prefab fallara en permutaciones de arquitectura o versión vacías que no se usaban.

Versión 1.0.0-rc01

12 de julio de 2021

Lanzamiento de androidx.games:games-controller:1.0.0-rc01. La versión 1.0.0-rc01 contiene estas confirmaciones.

Correcciones de errores

  • Se solucionó un problema de incompatibilidad con el GameActivity más reciente.

Versión 1.0.0-beta01

30 de junio de 2021

Lanzamiento de androidx.games:games-controller:1.0.0-beta01. La Versión 1.0.0-beta01 contiene estas confirmaciones.

Cambios en la API

  • Ahora, las funciones que mostraban un valor booleano para confirmar si es correcto o no muestran una enumeración Paddleboat_Error_Code.
  • Se cambió el nombre de Paddleboat_onPause por Paddleboat_onStop.
  • Se cambió el nombre de Paddleboat_onResume por Paddleboat_onStart.
  • Paddleboat_processGameActivityEvent se divide en dos funciones: Paddleboat_processGameActivityKeyInputEvent y Paddleboat_processGameActivityMotionInputEvent.
  • Se quitaron las funciones de controladores extendidos que requerían compilación con un SDK de vista previa de Android S.
  • Se agregó la función Paddleboat_getBackButtonConsumed.
  • Ahora, las devoluciones de llamada del estado del controlador y del mouse cuentan con un parámetro opcional de un puntero para los datos que define el usuario.
  • Se movió la string del nombre del controlador fuera de la estructura de la información del dispositivo, y ahora se accede mediante la función Paddleboat_getControllerName.

Correcciones de errores

  • Se solucionó un error en el que un controlador que no se informaba en un principio como uno, pero luego sí lo hacía mediante un mensaje onInputDeviceChanged, no se detectaba correctamente como una conexión de controlador.

Versión 1.0.0-alpha01

16 de junio de 2021

Lanzamiento de androidx.games:games-controller:1.0.0-alpha01.

Nuevas funciones

  • Games-Controller es una nueva biblioteca que proporciona una API para C para detectar dispositivos de controles de juegos, interactuar con ellos y leer las entrada correspondientes.

Games-Text-Input 2.1

Versión 2.1.0-alpha01

26 de julio de 2023

Lanzamiento de androidx.games:games-text-input:2.1.0-alpha01. La versión 2.1.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Cómo agregar compatibilidad con modos de varias y de una sola línea

Cambios en la API

  • Agregar función isSoftwareKeyboardVisible
  • Agrega definiciones de campos de bits para GameActivity_setImeEditorInfo
  • Agregar devolución de llamada onEditorAction

Correcciones de errores

  • Se solucionó el problema de sincronización de teclados de hardware y software.
  • Borrar el enfoque cuando el teclado en pantalla está oculto

Games-Text-Input 2.0

Versión 2.0.0

8 de marzo de 2023

Lanzamiento de androidx.games:games-text-input:2.0.0. La versión 2.0.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.1.1

  • Se actualizó la versión principal debido a cambios en el sistema de compilación. No hay actualizaciones para la biblioteca ni la API.

Games-Text-Input versión 1.1

Versión 1.1.2-alpha01

9 de noviembre de 2022

Lanzamiento de androidx.games:games-text-input:1.1.2-alpha01. La versión 1.1.2-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • No hay cambios nuevos.

Versión 1.1.1

13 de julio de 2022

Lanzamiento de androidx.games:games-text-input:1.1.1. La versión 1.1.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigieron errores que se generaban por la falta del archivo .aar en la versión anterior.

Versión 1.1.0

9 de febrero de 2022

Lanzamiento de androidx.games:games-text-input:1.1.0. La versión 1.1.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.0.0 - Se agregó la funcionalidad de escucha y consulta WindowInsets a GameTextInput. - Se agregó el encabezado gamecommon.h que faltaba.

Versión 1.1.0-rc01

26 de enero de 2022

Lanzamiento de androidx.games:games-text-input:1.1.0-rc01. La versión 1.1.0-rc01 contiene estas confirmaciones.

Versión 1.1.0-beta01

15 de diciembre de 2021

Lanzamiento de androidx.games:games-text-input:1.1.0-beta01. La versión 1.1.0-beta01 contiene estas confirmaciones.

Correcciones de errores

  • Corrige inserciones de cascada y de IME
  • Agrega el encabezado gamecommon.h que falta

Versión 1.1.0-alpha01

13 de octubre de 2021

Lanzamiento de androidx.games:games-text-input:1.1.0-alpha01. La versión 1.1.0-alpha01 contiene estas confirmaciones.

Cambios en la API

  • Se agregó la funcionalidad de inserciones de IME a GameTextInput.

Games-Text-Input versión 1.0

Versión 1.0.0

4 de agosto de 2021

Lanzamiento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 y androidx.games:games-text-input:1.0.0. La versión 1.0.0 contiene estas confirmaciones.

Funciones principales de la versión 1.0.0

Esta es la versión inicial para estabilizar Games-Activity, Games-Controller y Games-Text-Input. Para obtener más información, consulta la página principal de AGDK.

Versión 1.0.0-rc01

12 de julio de 2021

Se lanzó androidx.games:games-text-input:1.0.0-rc01 sin cambios. La versión 1.0.0-rc01 contiene estas confirmaciones.

Versión 1.0.0-beta01

30 de junio de 2021

Lanzamiento de androidx.games:games-text-input:1.0.0-beta01. La Versión 1.0.0-beta01 contiene estas confirmaciones.

Cambios en la API

  • Se mejoró el modelo de propiedad de los objetos GameTextInputState.
  • Se ordenaron los tipos para que sean coherentes con NDK.

Versión 1.0.0-alpha01

16 de junio de 2021

Lanzamiento de androidx.games:games-text-input:1.0.0-alpha01.

Nuevas funciones

  • Games-Text-Input es una biblioteca nueva para ayudar a los desarrolladores de juegos a usar la entrada de teclado en pantalla de Android con C/C++.

Games Frame Pacing versión 2.1

Versión 2.1.0

15 de noviembre de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.1.0. La versión 2.1.0 contiene estas confirmaciones.

Versión 2.1.0-rc01

20 de septiembre de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.1.0-rc01. La versión 2.1.0-rc01 contiene estas confirmaciones.

Versión 2.1.0-beta01

24 de mayo de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.1.0-beta01. La versión 2.1.0-beta01 contiene estas confirmaciones.

Correcciones de errores

  • Se agotó el tiempo de espera en caso de que falle la inicialización de NDKChoreographer (ef466d).
  • Cuando se usan frecuencias de actualización de consultas de SwappyGL_getSupportedRefreshPeriodsNS de forma explícita desde el sistema (c85235)

Versión 2.1.0-alpha01

5 de abril de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.1.0-alpha01. La versión 2.1.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Nueva API para restablecer el estado del ritmo de fotogramas
  • Nueva API para inhabilitar el impacto del ritmo de fotogramas de Swappy sin dejar de observar los tiempos de CPU y GPU.

Cambios en la API

  • SwappyGL_resetFramePacing/SwappyVk_resetFramePacing ahora se puede usar para restablecer el estado interno del ritmo de fotogramas. El ritmo de fotogramas ahora solo considerará los datos desde el momento en que se llama a la API de restablecimiento
  • Ahora se puede usar SwappyGL_enableFramePacing/SwappyVk_enableFramePacing para habilitar o inhabilitar el ritmo de fotogramas de Swappy. Cuando se inhabilita,
  • SwappyGL_enableBlockingWait/SwappyVk_enableBlockingWait se puede usar para controlar si se produce una espera de bloqueo del trabajo de la GPU del último fotograma cuando se inhabilita el ritmo de fotogramas.

Correcciones de errores

  • Se realizan mejoras de rendimiento para los casos vinculados a la GPU cuando se usa la API de Swappy GL.

Games Frame Pacing versión 2.0

Versión 2.0.0

8 de marzo de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.0.0. La versión 2.0.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.10.1

  • El sistema de compilación experimentó cambios importantes, lo que generó una sola biblioteca en lugar de varias por versión del SDK o NDK.
  • Se agregaron estadísticas de fotogramas de Vulkan.
  • Se agrega una nueva API para borrar estadísticas de fotogramas.
  • Los registros son silenciosos en el modo de lanzamiento y se pueden habilitar en el modo de depuración.

Versión 2.0.0-rc01

22 de febrero de 2023

Se lanzó androidx.games:games-frame-pacing:2.0.0-rc01. La versión 2.0.0-rc01 contiene estas confirmaciones.

Nuevas funciones

  • El registro ahora está oculto detrás de una marca de compilación. De forma predeterminada, la compilación de lanzamiento de la biblioteca no tiene registros, y la versión de depuración de la biblioteca tiene todos los registros activados.

Versión 2.0.0-beta01

8 de febrero de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.0.0-beta01. La versión 2.0.0-beta01 contiene estas confirmaciones.

Nuevas funciones

  • Se incorporó una nueva API para borrar las estadísticas de fotogramas.

Cambios en la API

  • Se agregaron las API de SwappyGL_clearStats y SwappyGL_clearStats.

Versión 2.0.0-alpha01

11 de enero de 2023

Lanzamiento de androidx.games:games-frame-pacing:2.0.0-alpha01. La versión 2.0.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Se agregaron estadísticas de fotogramas de Vulkan

Cambios en la API

  • Se aumentó la versión principal debido a la refactorización de los archivos de compilación
  • Se agregaron 3 API nuevas: SwappyVk_enableStats, SwappyVk_recordFrameStart y SwappyVk_getStats.

Correcciones de errores

  • Se aplica el umbral solo en el modo de intercambio automático (Ic0786)

Games Frame Pacing 1.10

Versión 1.10.2-alpha01

9 de noviembre de 2022

Lanzamiento de androidx.games:games-frame-pacing:1.10.2-alpha01. La versión 1.10.2-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • No hay cambios nuevos.

Versión 1.10.1

15 de junio de 2022

Lanzamiento de androidx.games:games-frame-pacing:1.10.1. La versión 1.10.1 contiene estas confirmaciones.

Correcciones de errores

  • Se corrigió el error de Swappy por el que no se compila con NDK menor de 23 y mayor de 17.
  • API expuesta para recuperar las frecuencias de actualización compatibles con la pantalla.

Versión 1.10.0

23 de febrero de 2022

Lanzamiento de androidx.games:games-frame-pacing:1.10.0. La versión 1.10.0 contiene estas confirmaciones.

Cambios importantes desde 1.9.0

  • Se ignoran las entradas de filtro de Choreographer contaminantes y se suaviza más para evitar fallos en el emulador.
  • Se agregan las funciones *_uninjectTracer.

Versión 1.10.0-rc01

9 de febrero de 2022

Lanzamiento de androidx.games:games-frame-pacing:1.10.0-rc01. La versión 1.10.0-rc01 contiene estas confirmaciones.

Versión 1.10.0-beta01

26 de enero de 2022

Lanzamiento de androidx.games:games-frame-pacing:1.10.0-beta01. La versión 1.10.0-beta01 contiene estas confirmaciones.

Versión 1.10.0-alpha01

15 de diciembre de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.10.0-alpha01. La versión 1.10.0-alpha01 contiene estas confirmaciones.

Nuevas funciones

  • Suma de la función SwappyGL_uninjectTracer.

Cambios en la API

  • Quita las devoluciones de llamada que se agregaron antes con SwappyGL_injectTracer mediante la API de SwappyGL_uninjectTracer(const SwappyTracer *t).

Games Frame Pacing 1.9

Versión 1.9.1

13 de octubre de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.9.1. La versión 1.9.1 contiene estas confirmaciones.

Correcciones de errores

Versión 1.9.0

12 de julio de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.9.0. La versión 1.9.0 contiene estas confirmaciones.

Cambios importantes desde la versión 1.7.0

  • Se actualizó para que coincida con el esquema del control de versiones internas.

Games Frame Pacing 1.7.0

Versión 1.7.0

30 de junio de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.7.0. La versión 1.7.0 contiene estas confirmaciones.

Versión 1.7.0-rc01

2 de junio de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.7.0-rc01. La versión 1.7.0-rc01 contiene estas confirmaciones.

Versión 1.7.0-beta02

24 de febrero de 2021

Lanzamiento de androidx.games:games-frame-pacing:1.7.0-beta02.

Versión 1.7.0-beta01

16 de diciembre de 2020

Lanzamiento de androidx.games:games-frame-pacing:1.7.0-beta01.

Games Performance Tuner 1.4.3

Versión 1.4.3

12 de julio de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.4.3. La versión 1.4.3 contiene estas confirmaciones.

Cambios importantes desde la versión 1.1.0

  • Se actualizó para que coincida con el esquema del control de versiones internas.

Games Performance Tuner 1.1.0

Versión 1.1.0

30 de junio de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.1.0. La versión 1.1.0 contiene estas confirmaciones.

Versión 1.1.0-rc01

2 de junio de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.1.0-rc01. La versión 1.1.0-rc01 contiene estas confirmaciones.

Versión 1.1.0-beta03

21 de abril de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.1.0-beta03.

Versión 1.1.0-beta02

24 de febrero de 2021

Lanzamiento de androidx.games:games-performance-tuner:1.1.0-beta02.

Versión 1.1.0-beta01

16 de diciembre de 2020

Lanzamiento de androidx.games:games-performance-tuner:1.1.0-beta01.

Versión 1.1.0-alpha01

Lanzamiento de androidx.games:games-performance-tuner:1.1.0-alpha01.

Versión 1.0.0

Versión 1.0.0-alpha02

12 de agosto de 2020

Se cambió el nombre en inglés de la biblioteca de juegos de Android a Android Games library.

androidx.gaming -> androidx.games

Versión 1.0.0-alpha01

10 de junio de 2020

Lanzamiento de androidx.games:1.0.0-alpha01