Przygotowując aplikację na Androida do działania na Chromebookach, weź pod uwagę funkcje urządzenia, z której ona korzysta. Chromebooki nie obsługują wszystkich funkcji sprzętu i oprogramowania, które są dostępne na innych urządzeniach z Androidem. Jeśli Twoja aplikacja wymaga określonych funkcji, które nie są obsługiwane na Chromebookach, nie będzie można jej zainstalować.
Wymagania aplikacji dotyczące funkcji sprzętowych i określonych funkcji oprogramowania określasz w pliku manifestu. W tym dokumencie opisano deklaracje funkcji manifestu aplikacji, które są niezgodne z Chromebookami.
Niezgodne wpisy w pliku manifestu
Wpisy w pliku manifestu wymienione w tej sekcji nie są zgodne z Chromebookami. Jeśli aplikacja korzysta z którejkolwiek z tych pozycji, rozważ ich usunięcie lub dodanie razem z nimi wartości atrybutu required="false"
, aby umożliwić instalację aplikacji na Chromebookach.
Więcej informacji o deklarowaniu korzystania z funkcji bez wymagania jej dostępności na urządzeniu znajdziesz w przewodniku po elemencie manifestu <uses-feature>
. Pełną listę funkcji i opisów funkcji manifestu aplikacji znajdziesz w dokumentacji funkcji .
Uwaga: Android Studio 2.3 i nowsze mają wbudowane testy lintacyjne, które pozwalają automatycznie sprawdzać plik manifestu. W Android Studio wybierz Plik > Ustawienia > Edytor > Inspekcje > Android > Lint > Poprawność > ChromeOS.
Funkcje sprzętowe
Obsługa funkcji sprzętowych różni się w przypadku Chromebooków. Niektóre funkcje nie są obsługiwane na żadnych Chromebookach, a inne – tylko na niektórych Chromebookach.
Funkcje specjalne
Aby zapewnić lepszą obsługę sprzętu Chromebooków, android.hardware.type.pc
wyłącza emulację sygnału wejściowego myszy i touchpada. W tym wpisie musisz wskazać required="false"
. W przeciwnym razie aplikacja może działać tylko na Chromebookach.
Nieobsługiwane funkcje sprzętowe
Poniżej znajdziesz listę funkcji sprzętowych, 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, która korzysta z funkcjiMANUAL_POST_PROCESSING
, w tym z funkcją zastępowania automatycznego balansu bieli -
android.hardware.camera.capability.manual_sensor
: aparat, który korzysta z funkcjiMANUAL_SENSOR
, w tym obsługę blokowania automatycznej ekspozycji -
android.hardware.camera.capability.raw
: kamera, która korzysta z funkcjiRAW
, w tym możliwość zapisywania nieprzetworzonych plików DNG i udostępniania metadanych związanych z DNG. -
android.hardware.camera.flash
: aparat z lampą błyskową -
android.hardware.camera.level.full
: aparat obsługujący robienie zdjęć na poziomieFULL
. -
android.hardware.consumerir
: podczerwień (IR) -
android.hardware.location.gps
: 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 komunikacyjnymi. -
android.hardware.telephony.cdma
: obsługa sieci wielokrotnych dostępu (CDMA) w dziale telefonicznym -
android.hardware.telephony.gsm
: obsługa sieci telefonicznych Globalnego Systemu Komunikacji Mobilnej (GSM) -
android.hardware.type.automotive
: urządzenie z systemem operacyjnym Android Automotive -
android.hardware.type.television
: telewizja, która została wycofana. -
android.hardware.usb.accessory
: tryb akcesorium 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 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
: detektor kroków
Obsługa ekranu dotykowego
Od wersji M53 ChromeOS wszystkie aplikacje na Androida, które nie wymagają funkcji
android.hardware.touchscreen
, działają też na urządzeniach z Chrome OS, które obsługują tę funkcję.
android.hardware.faketouch
Urządzenia z fałszywymi interfejsami dotykowymi wyposażono w system wprowadzania danych, który emuluje podstawowe zdarzenia dotykowe. Na przykład za pomocą myszy lub pilota może 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 na ekranach dotykowych, możesz wykonać jedną z tych czynności:
- wykluczania określonych urządzeń w Konsoli Google Play.
- Filtruj urządzenia bez sprzętu z ekranem dotykowym, deklarując
android.hardware.touchscreen
jako wymagany do zainstalowania aplikacji.
Funkcje oprogramowania
Poniżej znajdziesz listę funkcji oprogramowania, które nie są obsługiwane na Chromebookach:
-
android.software.app_widgets
: widżety aplikacji na ekranie głównym -
android.software.device_admin
: administrowanie zasadami dotyczącymi urządzeń -
android.software.home_screen
: zastępuje ekran główny urządzenia -
android.software.input_methods
: niestandardowe metody wprowadzania (wystąpienia obiektuInputMethodService
) -
android.software.leanback
: interfejs zaprojektowany do wyświetlania na dużym ekranie -
android.software.live_wallpaper
: animowane tapety -
android.software.live_tv
: transmitowanie telewizji na żywo -
android.software.managed_users
: użytkownicy dodatkowi i profile zarządzane -
android.software.sip
: protokół SIP (Session Initiation Protocol), który obsługuje rozmowy wideo i komunikatory. -
android.software.sip.voip
: usługa Voice Over Internet Protocol (VoIP) oparta na protokole SIP, która obsługuje dwukierunkowe rozmowy wideo
Uprawnienia sugerujące wymagania funkcji
Niektóre uprawnienia, o które prosisz w plikach manifestu, mogą powodować sugerowane żądania dostępu do funkcji sprzętu i oprogramowania. Żądanie tych uprawnień uniemożliwia instalowanie aplikacji na Chromebookach.
Szczegółowe informacje o tym, jak zapobiec wyświetlaniu aplikacji na Chromebookach przez prośby o uprawnienia, znajdziesz w sekcji Niezgodne wpisy w pliku manifestu na tej stronie.
W tabeli poniżej znajdziesz uprawnienia sugerujące wymagania funkcji, które sprawiają, że aplikacja jest niezgodna z Chromebookami:
Kategoria | To uprawnienie | Oznacza to wymaganie 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 |