Korzystając ze Sklepu Google Play, możesz instalować aplikacje na Androida w niektórych usługach Google Chromebooki. W tym dokumencie opisujemy Chromebooki, Chromeboksy Komputery Chromebase, na których można instalować aplikacje na Androida.
Omówienie
Większość telefonów z Androidem ma chipsety ARM. Jednak wiele urządzeń z ChromeOS używa układów x86. W przypadku podstawowych aplikacji napisanych w języku Kotlin lub Java ta różnica nie ma znaczenia. Jednak w przypadku aplikacji napisanych w kodzie natywnym, w tym tych utworzonych w grze układy scalone w urządzeniu mogą być istotnym problemem.
Najlepiej, gdy wszystkie aplikacje i gry z natywnym kodem mają być zainstalowane na wszystkich 4 głównych urządzeniach z Androidem.
Interfejsy binarne aplikacji (ABI):
armeabi-v7a (arm32), arm64-v8a (arm64), x86 (x86_32) i x86_64. Zapewnia to największą wydajność
i minimalne zużycie baterii przez poszczególne urządzenia. Na przykład aplikacja build.gradle
oparta na cmake’u
może zawierać:
Odlotowe
externalNativeBuild { cmake { abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } }
Kotlin
externalNativeBuild { cmake { abiFilters("armeabi-v7a", "arm64-v8a", "x86", "x86_64") } }
Rozmiar pakietu Android Package Kit (APK)
Każdy interfejs ABI w monolitycznym pliku APK zwiększa swój rozmiar. Może to wpłynąć wykorzystanie miejsca na dysku przez użytkowników, rozmiar pobieranej aplikacji oraz informację o tym, czy dotyczy nie może wykraczać poza limity rozmiaru w Sklepie Play. Najlepszym sposobem, aby tego uniknąć, jest użycie Pakiety aplikacji na Androida.
Pakiety aplikacji pozwalają łatwo połączyć wszystkie 4 interfejsy ABI z poziomu Android Studio bez zwiększania pobierania danych przez użytkowników. Ułatwiają też korzystanie z dynamicznego wyświetlania, , aby użytkownicy mogli pobierać duże gry tylko na żądanie. Jeśli nie można użyć pakietów aplikacji możesz użyć starszej wersji wielu plików APK, podobne zachowanie.
Kompilacje 32- i 64-bitowe
Wszystkie aplikacje na Androida muszą udostępniać 64-bitową wersję kompilacji. Kompilacja 32-bitowa jest opcjonalna zarówno dla procesorów ARM, urządzeń x86. Zobacz 64-bitową wersję Androida dokumentacji.
Dostarczenie tylko kompilacji 64-bitowej zmniejsza liczbę potrzebnych celów kompilacji i ale ogranicza też liczbę urządzeń, na których możesz uruchomić grę. Dla: Na przykład ze względu na inne ograniczenia sprzętowe wiele starszych Chromebooków obsługuje tylko 32-bitowy choć ma procesor 64-bitowy. Aby mieć pewność, że Twoja aplikacja będzie działać na tych urządzeniach, dodaj do 32-bitowej i 64-bitowej.
Translacja ARM
Chromebooki x86 starają się tłumaczyć kod ARM, gdy tylko jest to możliwe, Tłumacz spowalnia wydajność i zwiększa wykorzystanie baterii. Dla jak najlepszych użytkowników kompilacje x86. Jeśli to niemożliwe, uwzględnij interfejsy ABI zarówno w arm32, jak i arm64 ponieważ niektóre Chromebooki x86 mogą nie tłumaczyć kodu arm64.
Tłumaczenie arm32 jest dostępne na wszystkich Chromebookach z Androidem, ale nie na wszystkich mogą przetłumaczyć kod Arm64. Oznacza to, że jeśli Twoja gra ma tylko cele kompilacji w wersji arm64, nie jest dostępna na wielu urządzeniach z ChromeOS. Jeśli nie możesz wysłać produktu pliki binarne x86, uwzględnij w swoich kompilacjach zarówno interfejsy ABI arm32, jak i arm64.
Uwzględnione interfejsy ABI | Pomoc dotycząca ChromeOS |
---|---|
grupa eksperymentalna64 | Niska |
arm32 i arm64 | OK (z tłumaczeniem) |
arm32, arm64, x86_32 i x86_64 | Najlepsze |