Ao preparar seu app para Android para ser executado em Chromebooks, considere os recursos de dispositivo que ele usa. Os Chromebooks não são compatíveis com todos os recursos de software e hardware disponíveis em outros dispositivos que executam o Android. Se o app exigir recursos específicos incompatíveis com os Chromebooks, ele não estará disponível para instalação nesses dispositivos.
Você declara os requisitos do seu app para os recursos de hardware e alguns recursos de software no arquivo de manifesto. Este documento descreve as declarações de recurso de manifesto do app que não são compatíveis com Chromebooks.
Entradas incompatíveis do manifesto
As entradas do manifesto listadas nesta seção não são compatíveis com Chromebooks. Se o app usa alguma dessas entradas, remova-as ou inclua o valor de atributo required="false" com elas para que o app seja instalado em Chromebooks.
Para mais informações sobre como declarar um uso de recurso sem exigir que ele esteja disponível no dispositivo, consulte o guia do elemento <uses-feature> do manifesto. Para ver uma lista completa de descrições e recursos de manifestos do app, consulte a referência de recursos .
Observação: o Android Studio tem verificações de lint integradas para validar automaticamente o arquivo de manifesto. No Android Studio, selecione File > Settings > Editor > Inspections > Android > Lint > Correctness > ChromeOS.
Recursos de hardware
A compatibilidade com recursos de hardware varia nos Chromebooks. Alguns recursos não são aceitos em nenhum Chromebook, enquanto outros são compatíveis com alguns.
Recursos especiais
Para melhorar a compatibilidade de hardware em Chromebooks, o android.hardware.type.pc desativa a emulação de entrada para mouse
e touchpad. Você precisa indicar required="false" para essa entrada. Caso contrário, o app só poderá ser executado em Chromebooks.
Recursos de hardware incompatíveis
A lista a seguir inclui os recursos de hardware incompatíveis com Chromebooks:
-
android.hardware.camera: câmera traseira -
android.hardware.camera.autofocus: câmera que usa foco automático -
android.hardware.camera.capability.manual_post_processing: câmera que usa o recursoMANUAL_POST_PROCESSING, incluindo a funcionalidade de substituir o balanço automático de branco -
android.hardware.camera.capability.manual_sensor: câmera que usa o recursoMANUAL_SENSOR, incluindo compatibilidade com travamento de exposição automática -
android.hardware.camera.capability.raw: câmera que usa o recursoRAW, incluindo a capacidade de salvar arquivos DNG (raw) e fornecer metadados relacionados a DNG -
android.hardware.camera.flash: câmera que usa flash -
android.hardware.camera.level.full: câmera que usa compatibilidade com captura de imagem de nívelFULL -
android.hardware.consumerir: infravermelho (IR) -
android.hardware.location.gps: Sistema de Posicionamento Global (GPS) -
android.hardware.nfc: comunicação a curta distância (NFC) -
android.hardware.nfc.hce: emulação de cartão NFC, que está obsoleta -
android.hardware.sensor.barometer: barômetro (pressão atmosférica) -
android.hardware.telephony: telefonia, incluindo rádio com serviços de comunicação de dados -
android.hardware.telephony.cdma: compatibilidade com rede de Acesso múltiplo por divisão de código de telefonia (CDMA, na sigla em inglês) -
android.hardware.telephony.gsm: compatibilidade com rede de telefonia de sistema global para comunicações móveis (GSM) -
android.hardware.type.automotive: dispositivo Android Automotive OS -
android.hardware.type.television: televisão, que está descontinuada -
android.hardware.usb.accessory: modo de acessório USB -
android.hardware.usb.host: modo de host USB
Recursos de hardware parcialmente compatíveis
A lista a seguir inclui recursos de hardware que podem estar disponíveis em alguns Chromebooks:
-
android.hardware.sensor.accelerometer: acelerômetro (orientação do dispositivo) -
android.hardware.sensor.compass: bússola -
android.hardware.sensor.gyroscope: giroscópio (rotação e giro do dispositivo) -
android.hardware.sensor.light: claro -
android.hardware.sensor.proximity: proximidade (do usuário) -
android.hardware.sensor.stepcounter: contador de passos -
android.hardware.sensor.stepdetector: detector de passos
Compatibilidade para hardware com tela touchscreen
Desde a versão M53 do ChromeOS, todos os apps para Android que não exigem explicitamente o recurso
android.hardware.touchscreen também funcionam em dispositivos
ChromeOS compatíveis com o recurso
android.hardware.faketouch.
Dispositivos que têm interfaces de toque simuladas fornecem um sistema de entrada de usuário que simula eventos de toque básicos. Por exemplo, o usuário pode interagir com um mouse ou controle remoto para mover um cursor na tela, rolar por uma lista e arrastar elementos de uma parte da tela para outra.
Se você não quiser que seu app seja instalado em dispositivos que tenham interfaces de toque falsas, em vez de touchscreen, realize uma das seguintes ações:
- Exclua dispositivos específicos no Google Play Console.
- Filtre dispositivos sem hardware de tela touchscreen declarando explicitamente
android.hardware.touchscreencomo necessário para instalar seu app.
Recursos de software
A lista a seguir inclui os recursos de software que não são compatíveis com Chromebooks:
-
android.software.app_widgets: widgets de apps na tela inicial -
android.software.device_admin: administração de política do dispositivo -
android.software.home_screen: substitui a tela inicial do dispositivo -
android.software.input_methods: métodos de entrada personalizados (instâncias deInputMethodService) -
android.software.leanback: IU projetada para visualização em telas grandes -
android.software.live_wallpaper: planos de fundo animados -
android.software.live_tv: streaming de programas de TV ao vivo -
android.software.managed_users: usuários secundários e perfis gerenciados -
android.software.sip: serviço SIP (Session Initiation Protocol), compatível com videoconferência e mensagem instantânea -
android.software.sip.voip: serviço VoIP (Voz sobre IP) baseado em SIP, compatível com videoconferência bidirecional
Permissões que sugerem requisitos de recurso
Algumas permissões que você solicita nos arquivos de manifesto podem criar solicitações sugeridas para recursos de hardware e software. Ao solicitar essas permissões, você evita que seu app seja instalado em Chromebooks.
Para mais detalhes sobre como evitar que solicitações de permissão tornem seu app indisponível para Chromebooks, consulte a seção Entradas incompatíveis do manifesto nesta página.
A tabela a seguir mostra as permissões que sugerem requisitos de recurso que tornam um app incompatível com Chromebooks:
Tabela 1. Permissões de dispositivo que sugerem recursos de hardware incompatíveis com Chromebooks.
| Categoria | Essa permissão | Implica este requisito de recurso |
|---|---|---|
| Câmera | 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 |