Mentre prepari la tua app per Android per l'esecuzione su Chromebook, considera le funzionalità del dispositivo che utilizza la tua app. I Chromebook non supportano tutte le funzionalità hardware e software disponibili su altri dispositivi che eseguono Android. Se la tua app richiede funzionalità specifiche non supportate su Chromebook, non sarà disponibile per l'installazione su Chromebook.
Nel file manifest dichiari i requisiti della tua app per le funzionalità hardware e per alcune funzionalità software. Questo documento descrive le dichiarazioni delle funzionalità del file manifest dell'app che non sono compatibili con i Chromebook.
Voci del manifest non compatibili
Le voci del file manifest elencate in questa sezione non sono compatibili con Chromebook. Se
la tua app utilizza una di queste voci, valuta la possibilità di rimuoverle o di includere il
valore dell'attributo required="false" in modo che l'app possa essere installata su
Chromebook.
Per saperne di più sulla dichiarazione dell'utilizzo delle funzionalità senza richiedere che siano disponibili sul dispositivo, consulta la guida per l'elemento manifest <uses-feature>. Per un elenco completo delle funzionalità e delle descrizioni del manifest dell'app, consulta il riferimento alle funzionalità .
Nota: Android Studio dispone di controlli lint integrati per convalidare automaticamente il file manifest. In Android Studio, seleziona File > Impostazioni > Editor > Controlli > Android > Lint > Correttezza > ChromeOS.
Funzionalità hardware
Il supporto delle funzionalità hardware varia sui Chromebook. Alcune funzionalità non sono supportate su nessun Chromebook, mentre altre sono supportate solo su alcuni Chromebook.
Funzionalità speciali
Per un migliore supporto hardware su Chromebook, android.hardware.type.pc disattiva l'emulazione dell'input per mouse
e touchpad. Devi indicare required="false"
per questa voce, altrimenti la tua app può essere eseguita solo sui Chromebook.
Funzionalità hardware non supportate
Il seguente elenco include le funzionalità hardware non supportate sui Chromebook:
-
android.hardware.camera: fotocamera posteriore -
android.hardware.camera.autofocus: videocamera che utilizza la messa a fuoco automatica -
android.hardware.camera.capability.manual_post_processing: videocamera che utilizza la funzionalitàMANUAL_POST_PROCESSING, inclusa la funzionalità per ignorare il bilanciamento del bianco automatico -
android.hardware.camera.capability.manual_sensor: fotocamera che utilizza la funzionalitàMANUAL_SENSOR, incluso il supporto per il blocco dell'esposizione automatica -
android.hardware.camera.capability.raw: fotocamera che utilizza la funzionalitàRAW, inclusa la possibilità di salvare file DNG (raw) e fornire metadati correlati ai file DNG -
android.hardware.camera.flash: fotocamera che utilizza il flash -
android.hardware.camera.level.full: videocamera che utilizza il supporto per l'acquisizione di immagini di livelloFULL -
android.hardware.consumerir: infrarossi (IR) -
android.hardware.location.gps: Global Positioning System (GPS) -
android.hardware.nfc: Near Field Communication (NFC) -
android.hardware.nfc.hce: emulazione della carta NFC, che è deprecata -
android.hardware.sensor.barometer: barometro (pressione dell'aria) -
android.hardware.telephony: telefonia, inclusa la radio con servizi di comunicazione dati -
android.hardware.telephony.cdma: supporto della rete CDMA (Code Division Multiple Access) per la telefonia -
android.hardware.telephony.gsm: supporto della rete Global System for Mobile Communications (GSM) per la telefonia -
android.hardware.type.automotive: Dispositivo Android Automotive OS -
android.hardware.type.television: televisione, che è deprecata -
android.hardware.usb.accessory: modalità accessorio USB -
android.hardware.usb.host: modalità host USB
Funzionalità hardware parzialmente supportate
L'elenco seguente include le funzionalità hardware che potrebbero essere disponibili su alcuni Chromebook:
-
android.hardware.sensor.accelerometer: accelerometro (orientamento del dispositivo) -
android.hardware.sensor.compass: bussola -
android.hardware.sensor.gyroscope: giroscopio (rotazione e torsione del dispositivo) -
android.hardware.sensor.light: luce -
android.hardware.sensor.proximity: prossimità (all'utente) -
android.hardware.sensor.stepcounter: contatore passi -
android.hardware.sensor.stepdetector: rilevatore di passi
Supporto hardware del touchscreen
A partire da ChromeOS versione M53, tutte le app per Android che non richiedono esplicitamente la funzionalità
android.hardware.touchscreen funzionano anche sui dispositivi ChromeOS
che supportano la funzionalità
android.hardware.faketouch.
I dispositivi con interfacce touch false forniscono un sistema di input utente che emula gli eventi touch di base. Ad esempio, l'utente può interagire con un mouse o un telecomando per spostare un cursore sullo schermo, scorrere un elenco e trascinare gli elementi da una parte dello schermo a un'altra.
Se non vuoi che la tua app venga installata su dispositivi con interfacce touch simulate ma non touchscreen, puoi completare una delle seguenti azioni:
- Escludi dispositivi specifici in Google Play Console.
- Filtra i dispositivi senza hardware touchscreen dichiarando esplicitamente
android.hardware.touchscreencome requisito per installare la tua app.
Funzionalità software
Il seguente elenco include le funzionalità software non supportate sui Chromebook:
-
android.software.app_widgets: widget delle app nella schermata Home -
android.software.device_admin: amministrazione delle policy per i dispositivi -
android.software.home_screen: sostituisce la schermata Home del dispositivo -
android.software.input_methods: metodi di inserimento personalizzati (istanze diInputMethodService) -
android.software.leanback: UI progettata per la visualizzazione su schermi di grandi dimensioni -
android.software.live_wallpaper: sfondi animati -
android.software.live_tv: streaming di programmi TV in diretta -
android.software.managed_users: utenti secondari e profili gestiti -
android.software.sip: servizio Session Initiation Protocol (SIP) che supporta videoconferenze e messaggistica istantanea -
android.software.sip.voip: Servizio Voice over Internet Protocol (VoIP) basato su SIP, che supporta le videoconferenze bidirezionali
Autorizzazioni che implicano requisiti delle funzionalità
Alcune autorizzazioni richieste nei file manifest possono creare richieste implicite per funzionalità hardware e software. Se richiedi queste autorizzazioni, impedisci l'installazione della tua app sui Chromebook.
Per informazioni dettagliate su come impedire che le richieste di autorizzazione rendano la tua app non disponibile sui Chromebook, consulta la sezione Voci del manifest incompatibili di questa pagina.
La tabella seguente mostra le autorizzazioni che implicano requisiti delle funzionalità che rendono un'app incompatibile con i Chromebook:
Tabella 1. Autorizzazioni del dispositivo che implicano funzionalità hardware incompatibili con i Chromebook.
| Categoria | Questa autorizzazione | Implica questo requisito della funzionalità |
|---|---|---|
| Fotocamera | CAMERA |
android.hardware.camera eandroid.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 |