Przygotowując aplikację na Androida do działania na Chromebookach, weź pod uwagę funkcje urządzenia, z których korzysta Twoja aplikacja. Chromebooki nie obsługują wszystkich funkcji sprzętowych i oprogramowania, które są dostępne na innych urządzeniach z Androidem. Jeśli aplikacja wymaga określonych funkcji, które nie są obsługiwane na Chromebookach, nie będzie można jej zainstalować na Chromebookach.
Wymagania aplikacji dotyczące funkcji sprzętowych i niektórych funkcji oprogramowania określasz w pliku manifestu. W tym dokumencie opisujemy deklaracje funkcji manifestu aplikacji, które są niezgodne z Chromebookami.
Niezgodne wpisy pliku manifestu
Wpisy w pliku manifestu wymienione w tej sekcji są niezgodne z Chromebookami. Jeśli Twoja aplikacja korzysta z któregoś z tych wpisów, rozważ ich usunięcie lub dodanie do nich wartości atrybutu required="false"
, aby aplikacja mogła być zainstalowana na Chromebookach.
Więcej informacji o deklarowaniu korzystania z funkcji bez konieczności jej udostępniania na urządzeniu znajdziesz w przewodniku na temat elementu manifestu <uses-feature>
. Pełną listę funkcji i opisów pliku manifestu aplikacji znajdziesz w dokumentacji funkcji .
Uwaga: Android Studio 2.3 i nowsze mają wbudowane funkcje sprawdzania lint, które pozwalają automatycznie sprawdzać plik manifestu. W Android Studio wybierz Plik > Ustawienia > Edytor > Inspekcje > Android > Lint > Prawidłowość > ChromeOS.
Funkcje sprzętowe
Obsługa funkcji sprzętowych różni się w zależności od Chromebooków. Niektóre funkcje nie są obsługiwane na żadnym Chromebooku, a inne tylko na niektórych.
Funkcje specjalne
Aby zapewnić lepszą obsługę sprzętu, android.hardware.type.pc
wyłącza emulację wejścia w przypadku myszy i touchpada. Musisz wskazać w tym wpisie wartość required="false"
. W przeciwnym razie aplikacja będzie mogła działać tylko na Chromebookach.
Nieobsługiwane funkcje sprzętowe
Poniższa lista zawiera funkcje sprzętowe, które nie są obsługiwane na Chromebookach:
-
android.hardware.camera
: tylny aparat -
android.hardware.camera.autofocus
: aparat z autofokusem -
android.hardware.camera.capability.manual_post_processing
: kamera korzystająca z funkcjiMANUAL_POST_PROCESSING
, w tym funkcji zastępowania automatycznego balansu bieli -
android.hardware.camera.capability.manual_sensor
: aparat obsługujący funkcjęMANUAL_SENSOR
, w tym obsługę automatycznego blokowania ekspozycji. -
android.hardware.camera.capability.raw
: aparat korzystający z funkcjiRAW
, w tym możliwość zapisywania nieprzetworzonych plików DNG i przesyłania metadanych związanych z DNG. -
android.hardware.camera.flash
: aparat z lampą błyskową -
android.hardware.camera.level.full
: aparat korzystający z funkcji robienia zdjęć na poziomieFULL
-
android.hardware.consumerir
: podczerwień (IR) -
android.hardware.location.gps
: system GPS -
android.hardware.nfc
: komunikacja Near Field Communication (NFC) -
android.hardware.nfc.hce
: wycofana emulacja karty NFC -
android.hardware.sensor.barometer
: barometr (ciśnienie powietrza) -
android.hardware.telephony
: telefonia, w tym radio z usługami komunikacji danych -
android.hardware.telephony.cdma
: dział kodu telefonicznego obsługa sieci wielokrotnego dostępu (CDMA) -
android.hardware.telephony.gsm
: globalny system telefonii do obsługi sieci komórkowej (GSM) -
android.hardware.type.automotive
: urządzenie z systemem operacyjnym Android Automotive -
android.hardware.type.television
: telewizor, który został wycofany -
android.hardware.usb.accessory
: tryb akcesoriów USB -
android.hardware.usb.host
: tryb hosta USB
Częściowo obsługiwane funkcje sprzętowe
Poniższa lista zawiera funkcje sprzętowe, które mogą być dostępne na niektórych Chromebookach:
-
android.hardware.sensor.accelerometer
: akcelerometr (orientacja urządzenia) -
android.hardware.sensor.compass
: kompas -
android.hardware.sensor.gyroscope
: żyroskop (obrót i obrót urządzenia) -
android.hardware.sensor.light
: jasny -
android.hardware.sensor.proximity
: bliskość (do użytkownika) -
android.hardware.sensor.stepcounter
: licznik kroków -
android.hardware.sensor.stepdetector
: wykrywanie kroków
Obsługa sprzętowa z ekranem dotykowym
Od ChromeOS w wersji M53 wszystkie aplikacje na Androida, które nie wymagają funkcji
android.hardware.touchscreen
wprost, działają też na urządzeniach z ChromeOS, które obsługują tę funkcję
android.hardware.faketouch
.
Urządzenia z fałszywymi interfejsami dotykowymi mają system wprowadzania danych użytkownika, który emuluje podstawowe zdarzenia dotykowe. Na przykład użytkownik może używać myszy lub pilota, aby przesuwać kursor na ekranie, przewijać listę i przeciągać elementy z jednej części ekranu do drugiej.
Jeśli nie chcesz instalować aplikacji na urządzeniach z fałszywymi interfejsami dotykowymi, ale nie z ekranami dotykowymi, możesz wykonać jedną z tych czynności:
- Wyklucz określone urządzenia w Konsoli Google Play.
- Filtruj urządzenia, które nie mają ekranu dotykowego, jawnie zadeklarując
android.hardware.touchscreen
jako wymagane do zainstalowania aplikacji.
Funkcje oprogramowania
Poniższa lista zawiera funkcje oprogramowania, które nie są obsługiwane na Chromebookach:
-
android.software.app_widgets
: widżety aplikacji na ekranie głównym -
android.software.device_admin
: administracja zasadami dotyczącymi urządzeń -
android.software.home_screen
: zastępuje ekran główny urządzenia -
android.software.input_methods
: niestandardowe metody wprowadzania (wystąpieniaInputMethodService
) -
android.software.leanback
: interfejs zaprojektowany z myślą o wyświetlaniu na dużym ekranie -
android.software.live_wallpaper
: animowane tapety -
android.software.live_tv
: transmisja programów telewizyjnych na żywo -
android.software.managed_users
: użytkownicy pomocniczy i profile zarządzane -
android.software.sip
: usługa SIP (Session Initiation Protocol), która obsługuje rozmowy wideo i czat. -
android.software.sip.voip
: usługa VoIP (Voice Over Internet Protocol) oparta na protokole SIP, która obsługuje dwukierunkowe rozmowy wideo
uprawnienia sugerujące wymagania dotyczące funkcji,
Niektóre uprawnienia, o które prosisz w plikach manifestu, mogą powodować dorozumiane żądania dotyczące funkcji sprzętu i oprogramowania. Jeśli prosisz o te uprawnienia, uniemożliwiasz zainstalowanie aplikacji na Chromebookach.
Szczegółowe informacje o tym, jak zapobiec niedostępności aplikacji na Chromebookach przez prośby o uprawnienia, znajdziesz w sekcji Wpisy w komunikatach niezgodnych z zasadami na tej stronie.
W tej tabeli znajdziesz uprawnienia, które wynikają z wymagań dotyczących funkcji, które powodują, że aplikacja jest niezgodna z Chromebookami:
Kategoria | To uprawnienie | Oznacza to wymaganie dotyczące funkcji |
---|---|---|
Aparat | CAMERA |
android.hardware.camera iandroid.hardware.camera.autofocus
|
Telefonia | CALL_PHONE |
android.hardware.telephony |
CALL_PRIVILEGED |
android.hardware.telephony |
|
MODIFY_PHONE_STATE |
android.hardware.telephony |
|
PROCESS_OUTGOING_CALLS |
android.hardware.telephony |
|
READ_SMS |
android.hardware.telephony |
|
RECEIVE_SMS |
android.hardware.telephony |
|
RECEIVE_MMS |
android.hardware.telephony |
|
RECEIVE_WAP_PUSH |
android.hardware.telephony |
|
SEND_SMS |
android.hardware.telephony |
|
WRITE_APN_SETTINGS |
android.hardware.telephony |
|
WRITE_SMS |
android.hardware.telephony |