Interfejs Game Mode API

Interfejs Game Mode API pozwala zoptymalizować grę pod kątem maksymalnej wydajności najdłuższy czas pracy na baterii, gdy użytkownik wybierze odpowiedni tryb gry.

Możesz też przesłać prośby dotyczące Interwencje w trybie gry, które mają na celu poprawę dane o wydajności gier, które nie są już aktualizowane przez deweloperów.

Interfejs Game Mode API i interwencje są dostępne na tych platformach:

Każda gra może zaimplementować działanie interfejsu Game Mode API, zaproponować tryb gry ustawienia interwencji dla OEM lub zrezygnować z interwencji w Trybie gry.

Konfiguracja

Aby korzystać w swojej grze z interfejsu Game Mode API, wykonaj te czynności:

  1. Pobierz i zainstaluj Pakiet SDK na Androida 13.

  2. W pliku AndroidManifest.xml zadeklarować aplikację jako grę, ustawiając parametr appCategory w Element <application>:

android:appCategory="game"
  1. Wyślij zapytanie do bieżącego trybu gry, dodając to do swojej głównej aktywności:

Java

// Only call this for Android 12 and higher devices
if ( Build.VERSION.SDK_INT >= Build.VERSION_CODES.S ) {
  // Get GameManager from SystemService
  GameManager gameManager = Context.getSystemService(GameManager.class);

  // Returns the selected GameMode
  int gameMode = gameManager.getGameMode();
}

Kotlin

// Only call this for Android 12 and higher devices
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
  // Get GameManager from SystemService
  val gameManager: GameManager? = context.getSystemService(Context.GAME_SERVICE) as GameManager?

  // Returns the selected GameMode
  val gameMode = gameManager?.gameMode
}
Obsługiwany tryb gry Opis
NIEOBSŁUGIWANE Gra nie deklaruje obsługi interfejsu Game Mode API i nie obsługuje interwencji w trybie gry.
STANDARDOWA Użytkownik nie wybrał trybu gry lub trybu standardowego.
WYKONYWANIE Ma najkrótszy czas oczekiwania, a w rezultacie skrócona żywotność baterii i jakość wysokiej jakości.
BATERIA Najdłuższy możliwy czas pracy na baterii, za to mniej wierności i liczby klatek.
  1. Dodaj kod, który wysyła zapytanie o stan trybu gry w polu Funkcja onResume:

    Przykład z ustawieniem użytkownika „Tryb baterii”

.

Sprawdzone metody

Jeśli Twoja gra obsługuje już różne poziomy jakości i liczby klatek celów, musisz określić odpowiednie ustawienia skuteczności tryby oszczędzania baterii:

  • Aby konsekwentnie uzyskiwać maksymalną liczbę klatek na sekundę na urządzeniu, rozważ użycie w celu uzyskania większej liczby klatek na sekundę.

  • Aby wydłużyć czas pracy na baterii, wybierz niższą częstotliwość odświeżania wyświetlacza (np. 30 Hz lub 60 Hz) i użyj tempa klatek, by ustawić kierowanie na obniżona stawka.

W grach z grafiką wysokiej jakości, np. strzelankami FPP, czy w trybie wieloosobowym online. gry bitewne (MOBA) i fabularne (RPG), osiągnięcie wysokich, spójnych liczb klatek w celu zmaksymalizowania zaangażowania użytkowników.

Zarówno w grach z grafiką wysokiej jakości, jak i zręcznościowych, włącz tryb oszczędzania baterii aby wydłużyć czas gry przez zmniejszenie szczytowej liczby klatek.

Zadeklaruj, że obsługujesz tryby gry

Aby zadeklarować obsługę Trybów gry i zastąpić wszelkie interwencje w tym trybie przez OEM: dodaj konfigurację trybu gry do <application> w tagu Plik AndroidManifest.xml:

<application>
    <meta-data android:name="android.game_mode_config"
               android:resource="@xml/game_mode_config" />
  ...
</application>

Następnie utwórz plik game_mode_config.xml w katalogu res/xml/ projektu z następującą treścią:

<?xml version="1.0" encoding="UTF-8"?>
<game-mode-config
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:supportsBatteryGameMode="true"
    android:supportsPerformanceGameMode="true"
/>

Przełącz tryby gry

Tryby gry możesz przełączać w panelu gier (dostępnym na urządzeń Pixel) lub podobnych aplikacji dostarczanych przez producentów OEM. Możesz też i używać polecenia powłoki Tryb gry podczas programowania.

Jeśli korzystasz z panelu gier, a ikona optymalizacji się nie wyświetla po premierze gry konieczne może być przesłanie aplikacji do Konsoli Google Play. i zainstaluj ją przez Sklep Play. Informacje o testowaniu aplikacji znajdziesz w Sklep Play, zobacz Wewnętrzne udostępnianie pakietów aplikacji i plików APK

Aktywność w panelu gier Rysunek 1. Panel gry z nakładką uruchomioną grą na Pixelu urządzenia.

Na ilustracji 1 tryb gry uruchomionej gry można zmienić w sekcji widżet. Zgodnie z informacjami w widżecie gra działa obecnie na PERFORMANCE i trybu uzyskiwania zgody.

Jeśli w trakcie tworzenia aplikacji używasz urządzenia bez Panelu gier i Producent nie zapewnia żadnego sposobu na ustawienie trybu gry dla każdej aplikacji, zmienić stan trybu gry za pomocą narzędzia adb:

adb shell cmd game mode [standard|performance|battery] <PACKAGE_NAME>

Przykładowa aplikacja

Przykład interfejsu Game Mode API pokazuje, jak można zoptymalizować liczbę klatek na sekundę i ograniczenie rozdzielczości renderowania, by zaoszczędzić około 25% energii w aplikacjach.

Dalej

Przeczytaj Interwencje w trybie gry. aby poprawić wydajność gry, gdy nie można dostarczyć aktualizacji.