Android 게임

Android 게임 라이브러리는 바이너리 다운로드로 제공되는 Android 게임 SDK를 미러링합니다. Android 게임 SDK를 수동으로 다운로드하여 빌드에 통합하는 대신 androidx 라이브러리를 사용할 수 있습니다.

Android 게임 SDK에 관한 자세한 내용은 SDK 문서SDK 출시 노트를 참고하세요.

이 표에는 androidx.games 그룹의 모든 아티팩트가 나열됩니다.

아티팩트 현재 안정화 버전 다음 버전 후보 베타 버전 알파 버전
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 -
이 라이브러리는 2021년 10월 13일에 최종 업데이트되었습니다.

종속 항목 선언

게임의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

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")
}
}

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참조하세요.

Gradle 속성 추가

앱(또는 모듈)의 build.gradle 파일과 동일한 디렉터리에 있는 gradle.properties 파일에 속성을 추가해야 할 수 있습니다. gradle.properties 파일이 없으면 만드세요.

Android 스튜디오 4.0을 사용하는 경우 gradle.properties에 다음 줄이 포함되어 있는지 확인합니다.

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

Android 스튜디오 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을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 의견을 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.

새로운 문제 제출하기

자세한 내용은 Issue Tracker 문서를 참고하세요.

Games-Activity 버전 1.1

버전 1.1.0-alpha01

2021년 9월 29일

androidx.games:games-activity:1.1.0-alpha01이 출시되었습니다. 버전 1.1.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

API 변경사항

  • GameActivityCallbacksonContentRectChanged 콜백을 추가했습니다.

버그 수정

  • android_native_app_glue.h에 누락된 메시지를 추가했습니다.
    • APP_CMD_CONTENT_RECT_CHANGED
    • APP_CMD_WINDOW_REDRAW_NEEDED

Games Performance Tuner 1.5.0

버전 1.5.0-beta01

2021년 9월 29일

androidx.games:games-performance-tuner:1.5.0-beta01이 출시되었습니다. 버전 1.5.0-beta01에 포함된 커밋을 확인하세요.

새로운 기능

  • 알파 버전에서 변경된 사항이 없습니다. 알파 버전에 포함된 사항은 다음과 같습니다.
    • 초기 설정에서 하드코딩되지 않고 프로그래매틱 방식으로 업로드 간 간격을 변경합니다.

API 변경사항

  • 알파 버전에서 변경된 사항이 없습니다. 알파 버전에 포함된 사항은 다음과 같습니다.
    • 새 함수: TuningFork_setAggregationStrategyInterval
    • TuningFork_Settings: aggregation_strategy_intervalms_or_count의 새 필드

버전 1.5.0-alpha01

2021년 8월 18일

androidx.games:games-performance-tuner:1.5.0-alpha01이 출시되었습니다. 버전 1.5.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

  • 이제 설정 파일을 사용하는 대신 프로그래매틱 방식으로 APT 업로드 간의 간격을 설정할 수 있습니다.

API 변경사항

  • TuningFork_setAggregationStrategyInterval 함수를 추가했습니다.
  • TuningFork_Settings 구조체 aggregation_strategy_intervalms_or_count를 필드에 추가했습니다.

Games-Activity 버전 1.0.0

버전 1.0.0

2021년 8월 4일

androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.

1.0.0의 주요 기능

Games-Activity, Games-Controller 및 Games-Text-Input의 공개 버전입니다. 자세한 내용은 AGDK 홈페이지를 참고하세요.

버전 1.0.0-rc01

2021년 7월 12일

androidx.games:games-activity:1.0.0-rc01이 출시되었습니다. 버전 1.0.0-rc01에 포함된 커밋을 확인하세요.

버그 수정

  • GameActivityCallbacks::onSaveInstanceState의 반환 유형을 수정했습니다.

버전 1.0.0-beta01

2021년 6월 30일

androidx.games:games-activity:1.0.0-beta01이 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.

API 변경사항

  • GameActivityInputInfo의 이름을 GameActivityPointerAxes로 바꿉니다.
  • 이제 onNativeWindowResized 콜백이 창의 너비와 높이를 제공합니다.
  • onContentRectChanged 콜백이 삭제되었습니다.
  • onLowMemory 이름을 onTrimMemory로 바꿨습니다.
  • GameActivity_setWindowFormat을 삭제했습니다.
  • GameActivityMotionEventsGameActivityMotionEvent 포인터의 소유권 모델을 개선했습니다.
  • onSaveInstanceState 콜백에서 사용자 상태의 소유권 모델을 개선했습니다.

버전 1.0.0-alpha01

2021년 6월 16일

androidx.games:games-activity:1.0.0-alpha01이 출시되었습니다.

새로운 기능

  • Games-Activity는 NativeActivity를 대체하는 새로운 라이브러리로, C/C++ 게임을 Android와 통합하는 권장 방법입니다.

Games-Controller 버전 1.0.0

버전 1.0.0

2021년 8월 4일

androidx.games:games-activity:1.0.0, androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.

1.0.0의 주요 기능

Games-Activity, Games-Controller 및 Games-Text-Input의 공개 버전입니다. 자세한 내용은 AGDK 홈페이지를 참고하세요.

버전 1.0.0-rc02

2021년 7월 21일

androidx.games:games-controller:1.0.0-rc02가 출시되었습니다. 버전 1.0.0-rc02에 포함된 커밋을 확인하세요.

버그 수정

  • 사용되지 않은 빈 아키텍처/버전 순열에서 Prefab 가져오기가 실패하는 패키징 오류가 수정되었습니다.

버전 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 enum을 반환합니다.
  • 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 버전 1.1

버전 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.0, androidx.games:games-controller:1.0.0androidx.games:games-text-input:1.0.0이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.

1.0.0의 주요 기능

Games-Activity, Games-Controller 및 Games-Text-Input의 공개 버전입니다. 자세한 내용은 AGDK 홈페이지를 참고하세요.

버전 1.0.0-rc01

2021년 7월 12일

androidx.games:games-text-input:1.0.0-rc01은 변경사항 없이 출시되었습니다. 버전 1.0.0-rc01에 포함된 커밋을 확인하세요.

버전 1.0.0-beta01

2021년 6월 30일

androidx.games:games-text-input:1.0.0-beta01이 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.

API 변경사항

  • GameTextInputState 객체의 소유권 모델을 개선했습니다.
  • NDK와 일관되도록 유형을 정리합니다.

버전 1.0.0-alpha01

2021년 6월 16일

androidx.games:games-text-input:1.0.0-alpha01이 출시되었습니다.

새로운 기능

  • Games-Text-Input은 게임 개발자가 C/C++의 Android 소프트 키보드 입력을 사용할 수 있도록 하는 새로운 라이브러리입니다.

Games Frame Pacing 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 Frame Pacing 1.7.0

버전 1.7.0

2021년 6월 30일

androidx.games:games-frame-pacing:1.7.0이 출시되었습니다. 버전 1.7.0에 포함된 커밋을 확인하세요.

버전 1.7.0-rc01

2021년 6월 2일

androidx.games:games-frame-pacing:1.7.0-rc01이 출시되었습니다. 버전 1.7.0-rc01에 포함된 커밋을 확인하세요.

버전 1.7.0-beta02

2021년 2월 24일

androidx.games:games-frame-pacing:1.7.0-beta02가 출시되었습니다.

버전 1.7.0-beta01

2020년 12월 16일

androidx.games:games-frame-pacing:1.7.0-beta01이 출시되었습니다.

Games Performance Tuner 1.4.3

버전 1.4.3

2021년 7월 12일

androidx.games:games-performance-tuner:1.4.3이 출시되었습니다. 버전 1.4.3에 포함된 커밋을 확인하세요.

1.1.0 이후 중요 변경사항

  • 내부 버전 관리 체계와 일치하도록 업데이트되었습니다.

Games Performance Tuner 1.1.0

버전 1.1.0

2021년 6월 30일

androidx.games:games-performance-tuner:1.1.0이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.

버전 1.1.0-rc01

2021년 6월 2일

androidx.games:games-performance-tuner:1.1.0-rc01이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.

버전 1.1.0-beta03

2021년 4월 21일

androidx.games:games-performance-tuner:1.1.0-beta03이 출시되었습니다.

버전 1.1.0-beta02

2021년 2월 24일

androidx.games:games-performance-tuner:1.1.0-beta02가 출시되었습니다.

버전 1.1.0-beta01

2020년 12월 16일

androidx.games:games-performance-tuner:1.1.0-beta01이 출시되었습니다.

버전 1.1.0-alpha01

androidx.games:games-performance-tuner:1.1.0-alpha01이 출시되었습니다.

버전 1.0.0

버전 1.0.0-alpha02

2020년 8월 12일

Android 게이밍 라이브러리의 이름이 Android 게임 라이브러리로 변경되었습니다.

androidx.gaming -> androidx.games

버전 1.0.0-alpha01

2020년 6월 10일

androidx.games:1.0.0-alpha01이 출시되었습니다.