Você pode usar a Google Play Store para instalar apps Android em vários Chromebooks Google. Este documento descreve os Chromebooks, Chromeboxes e Chromebases em que você pode instalar apps Android.
Visão geral
A maioria dos smartphones Android tem chipsets ARM. No entanto, muitos dispositivos ChromeOS usam chips x86. A diferença não é importante para apps básicos escritos em Kotlin ou Java. No entanto, para apps escritos em código nativo, incluindo aqueles criados com mecanismos de jogos, o chip no dispositivo pode ser uma preocupação importante.
O ideal é que todos os apps e jogos com código nativo tenham os quatro principais apps Android
ABIs (interfaces binárias de aplicativo):
armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32) e x86_64. Isso proporciona o melhor desempenho e o menor consumo de bateria para cada dispositivo. Por exemplo, uma build.gradle
baseada no cmake.
pode conter:
Groovy
externalNativeBuild { cmake { abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } }
Kotlin
externalNativeBuild { cmake { abiFilters("armeabi-v7a", "arm64-v8a", "x86", "x86_64") } }
Tamanho do pacote do Android (APK)
Cada ABI em um APK monolítico aumenta tamanho dele. Isso pode afetar o uso de disco dos usuários, o tamanho do download e se o app foi afetado pelos limites de tamanho da Play Store. A melhor maneira de evitar isso é usar os Android App Bundles.
Pacotes de apps permitem agrupar facilmente as quatro ABIs a partir do Android Studio, sem aumentar o de tamanho de download para seus usuários. Além disso, facilitam o uso do Dynamic Delivery, permitindo que os usuários façam o download de conteúdos de jogos grandes somente quando solicitados. Se os pacotes de apps não forem uma possibilidade poderá usar o vários APKs mais antigo para um comportamento semelhante.
Builds de 32 e 64 bits
Todos os apps Android precisam oferecer uma versão de build de 64 bits. Um build de 32 bits é opcional para dispositivos ARM e x86. Consulte a documentação do Android de 64 bits documentation para mais informações.
Embora a disponibilização somente de builds de 64 bits reduza o número de destinos necessários e a superfície de teste, ela também limita os tipos de dispositivos que podem executar o jogo. Para Por exemplo, devido a outras limitações de hardware, muitos Chromebooks mais antigos só podem executar o Android de 32 bits mesmo tendo CPUs de 64 bits. Para garantir que seu app possa ser executado nesses dispositivos, inclua compatibilidade com 32 e 64 bits.
Tradução de ARM
Os Chromebooks x86 tentam traduzir o código ARM sempre que possível, mas a tradução diminui o desempenho e aumenta o uso da bateria. Para que o melhor usuário experiência, forneça builds x86. Se não for possível, inclua as ABIs arm32 e arm64 no seus builds, porque alguns Chromebooks x86 podem não traduzir código arm64.
Embora a tradução arm32 esteja disponível em todos os Chromebooks compatíveis com Android, nem todos eles pode traduzir código arm64. Isso significa que, se o jogo só tiver destinos de build arm64, mas não está disponível para muitos dispositivos ChromeOS. Se não for possível enviar binários x86, inclua ABIs arm32 e arm64 nas seus builds.
ABIs incluídas | Suporte para o ChromeOS |
---|---|
arm64 | Ruim |
arm32 e arm64 | OK (com tradução) |
arm32, arm64, x86_32 e x86_64 | Melhor |