Dukungan perangkat ChromeOS untuk aplikasi

Anda dapat menggunakan Google Play Store untuk menginstal aplikasi Android di beberapa Chromebook Google. Dokumen ini menjelaskan tentang Chromebook, Chromebox, dan Chromebase tempat Anda dapat menginstal aplikasi Android.

Ringkasan

Sebagian besar ponsel Android memiliki chipset ARM. Namun, banyak perangkat ChromeOS menggunakan chip x86. Perbedaannya tidak penting untuk aplikasi dasar yang ditulis dalam Kotlin atau Java. Namun, untuk aplikasi yang ditulis dalam kode native, termasuk yang dibuat dengan mesin game, chipset dalam perangkat dapat menjadi masalah penting.

Idealnya, semua aplikasi dan game dengan kode native dikirimkan dengan keempat Android utama ABI (Antarmuka Biner Aplikasi): armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32), dan x86_64. Hal ini memberikan performa terbaik dan konsumsi baterai terendah untuk setiap perangkat. Misalnya, file build.gradle berbasis cmake mungkin berisi:

Groovy

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

Kotlin

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

Ukuran Android Package Kit (APK)

Setiap ABI dalam APK monolitik meningkatkan ukurannya. Hal ini dapat memengaruhi penggunaan disk pengguna, ukuran download aplikasi, dan apakah aplikasi terpengaruh oleh batas ukuran Play Store. Cara terbaik untuk menghindari hal ini adalah dengan menggunakan Android App Bundle.

Dengan App Bundle, Anda dapat dengan mudah memaketkan keempat ABI dari dalam Android Studio tanpa meningkatkan ukuran download untuk pengguna. Library ini juga memudahkan Anda untuk memanfaatkan Pengiriman Dinamis, sehingga pengguna dapat mendownload konten game berukuran besar hanya saat diminta. Jika App Bundle tidak memungkinkan, Anda dapat menggunakan multi-APK yang lama untuk perilaku serupa.

Build 32-bit dan 64-bit

Semua aplikasi Android harus menyediakan versi build 64-bit. Versi 32-bit bersifat opsional untuk perangkat ARM dan x86. Lihat dokumentasi Android 64-bit ⁠ untuk informasi selengkapnya.

Menyediakan build 64 bit saja tidak hanya akan mengurangi jumlah target build yang diperlukan dan permukaan pengujian, tetapi juga membatasi jenis perangkat yang dapat menjalankan game Anda. Misalnya, karena keterbatasan hardware lainnya, banyak Chromebook lama hanya dapat menjalankan aplikasi Android 32-bit, meskipun memiliki CPU 64-bit. Untuk memastikan aplikasi Anda dapat berjalan di perangkat ini, sertakan dukungan 32 dan 64-bit.

Terjemahan ARM

x86 Chromebook mencoba menerjemahkan kode ARM jika memungkinkan, tetapi terjemahan memperlambat performa dan meningkatkan penggunaan baterai. Untuk pengalaman pengguna terbaik, sediakan build x86. Jika tidak bisa, sertakan ABI arm32 dan arm64 di build Anda, karena beberapa Chromebook x86 mungkin tidak menerjemahkan kode arm64.

Meskipun terjemahan arm32 tersedia di semua Chromebook yang mendukung Android, tidak semua Chromebook dapat menerjemahkan kode arm64. Artinya, jika game Anda hanya memiliki target build arm64, game tidak akan tersedia untuk sejumlah besar perangkat ChromeOS. Jika Anda tidak dapat mengirim biner x86, sertakan ABI arm32 dan arm64 di build Anda.

ABI yang Disertakan Dukungan untuk ChromeOS
arm64 Buruk
arm32 dan arm64 Oke (dengan terjemahan)
arm32, arm64, x86_32, dan x86_64 Terbaik