Uygulamalar için ChromeOS cihaz desteği

Çeşitli Google Chromebook'lara Android uygulamaları yüklemek için Google Play Store'u kullanabilirsiniz. Bu belgede, Android uygulamalarını yükleyebileceğiniz Chromebook'lar, Chromebox'lar ve Chromebase'ler açıklanmaktadır.

Genel Bakış

Çoğu Android telefonda ARM çipsetler bulunur. Ancak birçok ChromeOS cihazda x86 çipleri kullanılır. Bu fark, Kotlin veya Java ile yazılmış temel uygulamalar için önemli değildir. Ancak oyun motorlarıyla oluşturulanlar da dahil olmak üzere C/C++ koduyla yazılmış uygulamalarda cihazdaki yonga seti önemli bir sorun olabilir.

İdeal olarak, C/C++ kodu içeren tüm uygulamalar ve oyunlar dört ana Android ABI'si (Uygulama İkili Arayüzleri) ile birlikte gönderilir: armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32) ve x86_64. Bu, her cihaz için en iyi performansı ve en düşük pil tüketimini sağlar. Örneğin, cmake tabanlı bir build.gradle dosyası şunları içerebilir:

Groovy

externalNativeBuild {
    cmake {
        abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
    }
}

Kotlin

externalNativeBuild {
    cmake {
        abiFilters("armeabi-v7a", "arm64-v8a", "x86", "x86_64")
    }
}

Android Paket Kiti (APK) boyutu

Monolitik bir APK'daki her ABI, APK'nın boyutunu artırır. Bu durum, kullanıcılarınızın disk kullanımını, uygulama indirme boyutunu ve uygulamanın Play Store boyut sınırlarından etkilenip etkilenmediğini etkileyebilir. Bunu önlemenin en iyi yolu Android App Bundle kullanmaktır.

Uygulama paketleri, Android Studio'da dört ABI'yi de paketlemenize olanak tanır ve kullanıcılarınız için indirme boyutunu artırmaz. Ayrıca, kullanıcıların büyük oyun içeriklerini yalnızca istendiğinde indirmesine olanak tanıyan Dinamik Yayınlama'dan yararlanmanıza da yardımcı olurlar. Uygulama paketleri sizin için mümkün değilse benzer davranışlar için eski çoklu APK'yı kullanabilirsiniz.

32 bit ve 64 bit derlemeler

Tüm Android uygulamaları 64 bit derleme sürümü sağlamalıdır. 32 bit derleme, hem ARM hem de x86 cihazlarda isteğe bağlıdır. Daha fazla bilgi için Android 64 bit⁠ sayfasına bakın.

Yalnızca 64 bit derlemeler sunmak, gereken derleme hedefi sayısını ve test yüzeyinizi azaltır ancak oyununuzu çalıştırabilecek cihaz türlerini de sınırlar. Örneğin, diğer donanım sınırlamaları nedeniyle birçok eski Chromebook, 64 bit CPU'ya sahip olmasına rağmen yalnızca 32 bit Android uygulamalarını çalıştırabilir. Uygulamanızın bu cihazlarda çalışabilmesi için hem 32 bit hem de 64 bit desteğini ekleyin.

ARM çevirisi

x86 Chromebook'lar, mümkün olduğunda ARM kodunu çevirmeye çalışır ancak çeviri, performansı yavaşlatır ve pil kullanımını artırır. En iyi kullanıcı deneyimi için x86 derlemeleri sağlayın. Bu mümkün değilse derlemelerinize hem arm32 hem de arm64 ABI'lerini ekleyin. Bunun nedeni, bazı x86 Chromebook'ların arm64 kodunu çevirememesidir. Örneğin, diğer donanım sınırlamaları nedeniyle birçok eski Chromebook, 64 bit CPU'ya sahip olmasına rağmen yalnızca 32 bit Android uygulamalarını çalıştırabilir. Uygulamanızın bu cihazlarda çalışmasına yardımcı olmak için hem 32 bit hem de 64 bit desteğini ekleyin.

arm32 çevirisi Android özellikli tüm Chromebook'larda kullanılabilse de tüm Chromebook'lar arm64 kodunu çeviremez. Bu nedenle, oyununuzda yalnızca arm64 yapı hedefleri varsa çok sayıda ChromeOS cihazda kullanılamaz. x86 ikililerini gönderemiyorsanız derlemelerinize hem arm32 hem de arm64 ABI'lerini ekleyin.

Dahil edilen ABI'ler ChromeOS desteği
arm64 Yetersiz
arm32 ve arm64 Tamam (çeviriyle birlikte)
arm32, arm64, x86_32 ve x86_64 En iyi