Oyun Modu API'si

Oyun Modu API'si, kullanıcı ilgili oyun modunu seçtiğinde oyununuzu en iyi performans veya en uzun pil ömrü için optimize etmenize olanak tanır.

Alternatif olarak, artık geliştiriciler tarafından güncellenmeyen oyunların performansını iyileştirmek amacıyla Oyun Modu müdahaleleri için istek gönderebilirsiniz.

Game Mode API ve müdahaleler aşağıdaki cihazlarda kullanılabilir:

Her oyun, Oyun Modu API davranışını uygulayabilir, OEM'lere Oyun Modu müdahale ayarları önerebilir veya Oyun Modu müdahalelerini devre dışı bırakabilir.

Kurulum

Oyununuzda Game Mode API'yi kullanmak için aşağıdakileri yapın:

  1. Android 13 SDK'sını indirip yükleyin.

  2. AndroidManifest.xml dosyasında, <application> öğesinde appCategory özelliğini ayarlayarak uygulamanızı bir oyun olarak tanımlayın:

android:appCategory="game"
  1. Mevcut oyun modunu ana etkinliğinize ekleyerek sorgulayın:

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
}
Desteklenen oyun modu Açıklama
DESTEKLENMİYOR Oyun, Oyun Modu API'sini desteklediğini beyan etmiyor ve Oyun Modu müdahalelerini desteklemiyor.
STANDART Kullanıcı bir oyun modu seçmedi veya standart mod seçmedi.
PERFORMANS Daha düşük pil ömrü ve kalite karşılığında en düşük gecikmeli kare hızlarını sağlar.
PİL Daha düşük kalite veya kare hızları karşılığında mümkün olan en uzun pil ömrünü sağlar.
  1. onResume işlevinde oyun modu durumunu sorgulamak için kod ekleyin:

    Pil modu kullanıcı ayarı örneği

En İyi Uygulamalar

Oyununuz zaten birden fazla kalite ve kare hızı hedefini destekliyorsa performans ve pil tasarrufu modları için uygun ayarları belirlemeniz gerekir:

  • Maksimum cihaz kare hızlarına tutarlı bir şekilde ulaşmak için: Daha yüksek kare hızları elde etmek için görüntü kalitesini biraz olsun düşürmeyi deneyin.

  • Pil ömrünü uzatmak için: Daha düşük bir ekran yenileme hızı (ör. 30 Hz veya 60 Hz) seçmeyi deneyin ve azaltılmış hızı hedeflemek için kare hızını kullanın.

Birinci şahıs nişancı, çok oyunculu online savaş alanları (MOBA) ve rol yapma oyunları (RPG'ler) gibi yüksek görüntü kalitesine sahip oyunlarda, kullanıcıların kendini kaptırmasını en üst düzeye çıkarmak için yüksek tutarlı kare hızları elde etmeye odaklanmanız gerekir.

Hem yüksek görüntü kalitesi hem de basit oyunlarda en yüksek kare hızlarınızı düşürerek oyun süresini uzatmak için pil tasarrufu modunu desteklemeniz gerekir.

Oyun modları için destek belirtme

Oyun Modları desteğini beyan etmek ve OEM'lerin Oyun Modu müdahalelerini geçersiz kılmak için önce Oyun Modu yapılandırmasını AndroidManifest.xml dosyanızdaki <application> öğesine ekleyin:

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

Ardından projenizin res/xml/ dizininde aşağıdaki içeriklere sahip bir game_mode_config.xml dosyası oluşturun:

<?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"
/>

Oyun Modlarını Değiştir

Oyun modları arasında geçiş yapmak için Oyun Paneli'ni (Pixel cihazlarda kullanılabilir) veya OEM'ler tarafından sağlanan benzer uygulamaları kullanabilirsiniz. Alternatif olarak, geliştirme sırasında Oyun Modu kabuk komutunu da kullanabilirsiniz.

Oyun Paneli'ni kullanıyorsanız ve oyununuz başlatıldığında optimizasyon simgesi görüntülenmiyorsa uygulamanızı Google Play Console'a yüklemeniz ve Play Store'dan yüklemeniz gerekebilir. Play Store'da uygulama testi hakkında daha fazla bilgi için Uygulama paketlerini ve APK'ları dahili olarak paylaşma konusuna bakın.

Oyun Paneli Etkinliği! Şekil 1. Oyun Paneli'nde, Pixel cihazda çalışan oyunun yer paylaşımı gösteriliyor.

Şekil 1'de, çalışan oyunun Oyun Modu Optimizasyon widget'ından değiştirilebilir. Widget'ta gösterildiği gibi oyun şu anda PERFORMANCE modunda çalışmaktadır.

Geliştirme sırasında, Oyun Paneli'nin olmadığı bir cihaz kullanıyorsanız ve üretici, her bir uygulama için Oyun Modu'nu ayarlamak üzere herhangi bir yol sunmuyorsa Oyun Modu durumunu adb üzerinden değiştirebilirsiniz:

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

Örnek Uygulama

Oyun Modu API örneği'nde, uygulamalarınızda yaklaşık% 25 güç tasarrufu sağlamak için FPS'yi ve oluşturma çözünürlüğü sınırlarını nasıl optimize edebileceğiniz vurgulanmaktadır.

Sonraki

Oyun güncellemeleri sağlamak mümkün olmadığında oyunun performansını iyileştirmek için Oyun Modu Müdahaleleri bölümünü okuyun.