Android Games

A biblioteca Android Games espelha o SDK do Android Game, que está disponível como um download binário. Você pode usar a biblioteca AndroidX em vez de fazer o download e integrar manualmente o SDK do Android para Jogos à sua versão.

Para ver mais informações sobre o SDK do Android Game, consulte a documentação do SDK e as notas da versão do SDK.

Esta tabela lista todos os artefatos no grupo androidx.games.

Artefato Versão estável atual Próximo candidato a lançamento Versão Beta Versão Alfa
games-activity 1.0.0 - 1.1.0-beta01 -
games-controller 1.0.0 - - -
games-frame-pacing 1.9.1 - - -
games-text-input 1.0.0 - - 1.1.0-alpha01
games-performance-tuner 1.4.3 - 1.5.0-beta01 -
Esta biblioteca foi atualizada pela última vez em 17 de novembro de 2021

Declarar dependências

Para adicionar uma dependência ao jogo, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.

Adicione as dependências dos artefatos necessários no arquivo build.gradle para seu app ou módulo:

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

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

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

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

    // To use the Games Text Input Library
    implementation "androidx.games:games-text-input:1.1.0-alpha01"
}

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

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

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

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

    // To use the Games Text Input Library
    implementation("androidx.games:games-text-input:1.1.0-alpha01")
}
}

Para ver mais informações sobre dependências, consulte Adicionar dependências de compilação.

Adicionar propriedades do Gradle

Talvez seja necessário adicionar propriedades ao arquivo gradle.properties localizado no mesmo diretório que o arquivo build.gradle do seu app ou módulo. Se o arquivo gradle.properties não existir, crie-o.

Se você estiver usando o Android Studio 4.0, verifique se gradle.properties contém as seguintes linhas:

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

Se estiver usando o Android Studio 4.1 ou uma versão mais recente, verifique se gradle.properties contém as seguintes linhas:

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

Adicionar pacotes com o CMake

Para disponibilizar os pacotes importados do SDK do Game, adicione o seguinte ao arquivo CMakeLists.txt do app principal:

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

Isso permitirá que você inclua arquivos principais do SDK do Android Game no código do jogo:

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

No arquivo CMakeLists.txt do app principal, localize target_link_libraries para a biblioteca compartilhada principal. Adicione as referências às bibliotecas estáticas do SDK do Android Game para incluí-las na sua biblioteca compartilhada:

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

Feedback

Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema existente clicando no botão de estrela.

Criar novo problema

Consulte a documentação do Issue Tracker para saber mais.

Games-Activity versão 1.1

Versão 1.1.0-beta01

17 de novembro de 2021

Lançamento de androidx.games:games-activity:1.1.0-beta01. A versão 1.1.0-beta01 contém estas confirmações.

Novos recursos

  • Adicionamos suporte à consulta de encartes de janelas e detecção de mudanças de encarte. Isso permite que os jogos reajam ao pop-up do IME (editor de método de entrada, na sigla em inglês) e processem os encartes de cascata e de corte da câmera.

Mudanças em APIs

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

Correções de bugs

  • Evita o consumo de todos os principais eventos: volume, câmera etc. que agora são transmitidos ao sistema.

Versão 1.1.0-alpha01

29 de setembro de 2021

androidx.games:games-activity:1.1.0-alpha01 é lançado. A versão 1.1.0-alpha01 contém estas confirmações.

Mudanças em APIs

  • O callback onContentRectChanged foi adicionado aos GameActivityCallbacks.

Correções de bugs

  • Mensagens ausentes adicionadas ao android_native_app_glue.h:
    • APP_CMD_CONTENT_RECT_CHANGED
    • APP_CMD_WINDOW_REDRAW_NEEDED

Games Performance Tuner 1.5.0

Versão 1.5.0-beta01

29 de setembro de 2021

androidx.games:games-performance-tuner:1.5.0-beta01 é lançado. A versão 1.5.0-beta01 contém estas confirmações.

Novos recursos

  • Nenhuma mudança desde a versão Alfa. Aquela versão teve o seguinte:
    • Mudanças de maneira programática do intervalo entre os uploads, em vez de codificá-los nas configurações iniciais.

Mudanças na API

  • Nenhuma mudança desde a versão Alfa. Aquela versão teve o seguinte:
    • Nova função: TuningFork_setAggregationStrategyInterval
    • Novo campo em TuningFork_Settings: aggregation_strategy_intervalms_or_count

Versão 1.5.0-alpha01

18 de agosto de 2021

Lançamento de androidx.games:games-performance-tuner:1.5.0-alpha01. A versão 1.5.0-alpha01 contém estas confirmações.

Novos recursos

  • Agora é possível definir o intervalo entre os uploads do APT de forma programática, em vez de usar o arquivo de configurações.

Mudanças na API

  • Adição da função TuningFork_setAggregationStrategyInterval
  • Adição de campo à estrutura de TuningFork_Settings: aggregation_strategy_intervalms_or_count

Games-Activity versão 1.0.0

Versão 1.0.0

4 de agosto de 2021

Lançamento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 e androidx.games:games-text-input:1.0.0. A versão 1.0.0 contém estas confirmações.

Principais recursos da versão 1.0.0

Essa é a versão inicial para a versão estável da Games-Activity, Games-Controller e Games-Text-Input. Consulte a página inicial do AGDK para mais informações.

Versão 1.0.0-rc01

12 de julho de 2021

Lançamento de androidx.games:games-activity:1.0.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.

Correções de bugs

  • Correção do tipo de retorno de GameActivityCallbacks::onSaveInstanceState

Versão 1.0.0-beta01

30 de junho de 2021

Lançamento de androidx.games:games-activity:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.

Mudanças na API

  • GameActivityInputInfo foi renomeado como GameActivityPointerAxes
  • O retorno de chamada onNativeWindowResized agora fornece largura e altura da janela.
  • O retorno de chamada onContentRectChanged foi removido.
  • onLowMemory foi renomeado como onTrimMemory.
  • GameActivity_setWindowFormat removido.
  • Modelo de propriedade foi aprimorado para ponteiros GameActivityMotionEvents e GameActivityMotionEvent.
  • Melhorado o modelo de propriedade do estado do usuário no retorno de chamada onSaveInstanceState.

Versão 1.0.0-alpha01

16 de junho de 2021

Lançamento de androidx.games:games-activity:1.0.0-alpha01.

Novos recursos

  • Games-Activity é uma nova biblioteca que substitui o NativeActivity como a maneira recomendada para integrar um jogo C/C++ com o Android.

Games-Controller versão 1.0.0

Versão 1.0.0

4 de agosto de 2021

Lançamento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 e androidx.games:games-text-input:1.0.0. A versão 1.0.0 contém estas confirmações.

Principais recursos da versão 1.0.0

Essa é a versão inicial para a versão estável da Games-Activity, Games-Controller e Games-Text-Input. Consulte a página inicial do AGDK para mais informações.

Versão 1.0.0-rc02

21 de julho de 2021

Lançamento de androidx.games:games-controller:1.0.0-rc02. A versão 1.0.0-rc02 contém essas confirmações (link em inglês).

Correções de bugs

  • Correção do erro de empacotamento que fazia a importação do Prefab falhar em permutações de arquitetura/versão vazias e não usadas.

Versão 1.0.0-rc01

12 de julho de 2021

Lançamento de androidx.games:games-controller:1.0.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.

Correções de bugs

  • Correção de um problema de incompatibilidade com a GameActivity mais recente

Versão 1.0.0-beta01

30 de junho de 2021

Lançamento de androidx.games:games-controller:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.

Mudanças na API

  • Funções que retornavam um booleano para sucesso ou falha agora retornam um enum Paddleboat_Error_Code.
  • Paddleboat_onPause foi renomeado como Paddleboat_onStop.
  • Paddleboat_onResume foi renomeado como Paddleboat_onStart.
  • Paddleat_processGameActivityEvent dividido em duas funções: Paddleboat_processGameActivityKeyInputEvent e Paddleboat_processGameActivityMotionInputEvent
  • Remoção dos recursos do controle estendido que exigiam uma compilação em um SDK de prévia do Android S.
  • Adicionamos a função Paddleboat_getBackButtonConsumed
  • Agora, os retornos de chamada de status do controle e do mouse têm um parâmetro opcional de um ponteiro para dados definidos pelo usuário
  • A string de nome do controlador foi removida da estrutura de informações do dispositivo, agora acessada por meio da função Paddleboat_getControllerName

Correções de bugs

  • Correção de um problema em que um controlador que não se declarava inicialmente como um controlador, mas mais tarde, por meio de uma mensagem onInputDeviceChanged, não era detectado corretamente como uma conexão de controlador.

Versão 1.0.0-alpha01

16 de junho de 2021

Lançamento de androidx.games:games-controller:1.0.0-alpha01.

Novos recursos

  • Games-Controller é uma nova biblioteca que oferece uma API C para detectar, ler entradas e interagir com controles de jogos.

Games-Text-Input versão 1.1

Versão 1.1.0-alpha01

13 de outubro de 2021

androidx.games:games-text-input:1.1.0-alpha01 é lançado. A versão 1.1.0-alpha01 contém estas confirmações.

Mudanças na API

  • A funcionalidade de encartes do IME foi adicionada ao GameTextInput.

Games-Text-Input versão 1.0

Versão 1.0.0

4 de agosto de 2021

Lançamento de androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0 e androidx.games:games-text-input:1.0.0. A versão 1.0.0 contém estas confirmações.

Principais recursos da versão 1.0.0

Essa é a versão inicial para a versão estável da Games-Activity, Games-Controller e Games-Text-Input. Consulte a página inicial do AGDK para mais informações.

Versão 1.0.0-rc01

12 de julho de 2021

Lançamento de androidx.games:games-text-input:1.0.0-rc01 sem alterações. A versão 1.1.0-rc01 contém estas confirmações.

Versão 1.0.0-beta01

30 de junho de 2021

Lançamento de androidx.games:games-text-input:1.0.0-beta01. A versão 1.0.0-beta01 contém estas confirmações.

Mudanças na API

  • Modelo de propriedade aprimorado de objetos GameTextInputState.
  • Arrumação de tipos para fins de consistência com o NDK

Versão 1.0.0-alpha01

16 de junho de 2021

Lançamento de androidx.games:games-text-input:1.0.0-alpha01.

Novos recursos

  • A Games-Text-Input é uma nova biblioteca que ajuda desenvolvedores de jogos a usar a entrada de teclado de software do Android em C/C++.

Games Frame Pacing 1.9

Versão 1.9.1

13 de outubro de 2021

androidx.games:games-frame-pacing:1.9.1 é lançado. A versão 1.9.1 contém estas confirmações.

Correções de bugs

Versão 1.9.0

12 de julho de 2021

Lançamento de androidx.games:games-frame-pacing:1.9.0. A versão 1.9.0 contém estas confirmações.

Mudanças importantes desde a versão 1.7.0

  • Atualizada para corresponder ao esquema de controle de versões interno.

Games Frame Pacing 1.7.0

Versão 1.7.0

30 de junho de 2021

Lançamento de androidx.games:games-frame-pacing:1.7.0. A versão 1.7.0 contém estas confirmações.

Versão 1.7.0-rc01

2 de junho de 2021

Lançamento de androidx.games:games-frame-pacing:1.7.0-rc01. A versão 1.7.0-rc01 contém estas confirmações.

Versão 1.7.0-beta02

24 de fevereiro de 2021

Lançamento do androidx.games:games-frame-pacing:1.7.0-beta02.

Versão 1.7.0-beta01

16 de dezembro de 2020

Lançamento de androidx.games:games-frame-pacing:1.7.0-beta01.

Games Performance Tuner 1.4.3

Versão 1.4.3

12 de julho de 2021

Lançamento de androidx.games:games-performance-tuner:1.4.3. A versão 1.4.3 contém estas confirmações.

Mudanças importantes desde a versão 1.1.0

  • Atualizada para corresponder ao esquema de controle de versões interno.

Games Performance Tuner 1.1.0

Versão 1.1.0

30 de junho de 2021

Lançamento de androidx.games:games-performance-tuner:1.1.0. A versão 1.1.0 contém estas confirmações.

Versão 1.1.0-rc01

2 de junho de 2021

Lançamento de androidx.games:games-performance-tuner:1.1.0-rc01. A versão 1.1.0-rc01 contém estas confirmações.

Versão 1.1.0-beta03

21 de abril de 2021

Lançamento de androidx.games:games-performance-tuner:1.1.0-beta03.

Versão 1.1.0-beta02

24 de fevereiro de 2021

Lançamento do androidx.games:games-performance-tuner:1.1.0-beta02.

Versão 1.1.0-beta01

16 de dezembro de 2020

Lançamento do androidx.games:games-performance-tuner:1.1.0-beta01.

Versão 1.1.0-alpha01

Lançamento do androidx.games:games-performance-tuner:1.1.0-alpha01.

Versão 1.0.0

Versão 1.0.0-alpha02

12 de agosto de 2020

A biblioteca Android Gaming foi renomeada como a biblioteca Android Games.

androidx.gaming -> androidx.games

Versão 1.0.0-alpha01

10 de junho de 2020

Lançamento de androidx.games:1.0.0-alpha01.