Ao preparar seu app Android para ser executado em Chromebooks, considere os recursos de dispositivo que o app usa. Os Chromebooks não oferecem suporte a todos os recursos de hardware e software disponíveis em outros dispositivos que executam o Android. Se o app exigir recursos específicos que não têm suporte em Chromebooks, ele não estará disponível para instalação em Chromebooks.
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 usar alguma dessas entradas, remova-a ou inclua o
valor do atributo required="false"
com elas para que o app possa ser 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
conferir uma lista completa de descrições e recursos do manifesto do app, consulte a
Referência de recursos .
Observação: o Android Studio 2.3 e versões mais recentes têm verificações de lint integradas para validar automaticamente o arquivo de manifesto. No Android Studio, selecione File > Settings > Editor > Inspections > Android > Lint > Corretoness > ChromeOS.
Recursos de hardware
A compatibilidade com recursos de hardware varia nos Chromebooks. Alguns recursos não têm suporte em nenhum Chromebook, enquanto outros são compatíveis apenas com alguns.
Recursos especiais
Para melhorar o suporte de hardware nos Chromebooks, o android.hardware.type.pc
desativa a emulação de entrada para mouse
e touchpad. Indique required="false"
para essa entrada ou seu app poderá ser executado somente em Chromebooks.
Recursos de hardware incompatíveis
A lista a seguir inclui os recursos de hardware que não têm suporte a Chromebooks:
-
android.hardware.camera
: câmera traseira -
android.hardware.camera.autofocus
: câmera que usa autofoco -
android.hardware.camera.capability.manual_post_processing
: câmera que usa o recursoMANUAL_POST_PROCESSING
, incluindo a funcionalidade de modificar 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, na sigla em inglês) -
android.hardware.nfc.hce
: emulação de cartão NFC, que foi descontinuada. -
android.hardware.sensor.barometer
: barômetro (pressão de ar) -
android.hardware.telephony
: telefonia, incluindo rádio com serviços de comunicação de dados -
android.hardware.telephony.cdma
: compatibilidade com rede de várias divisões de código de telefonia (CDMA, na sigla em inglês) -
android.hardware.telephony.gsm
: suporte à rede de telefonia do Sistema global para comunicações móveis (GSM) -
android.hardware.type.automotive
: dispositivo Android Automotive OS -
android.hardware.type.television
: televisão, que foi descontinuada -
android.hardware.usb.accessory
: modo de acessório USB -
android.hardware.usb.host
: modo host USB
Recursos de hardware com suporte parcial
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
A partir da versão M53 do ChromeOS, todos os apps Android que não exigem explicitamente o recurso
android.hardware.touchscreen
também funcionam em dispositivos Chrome
OS com suporte ao recurso
android.hardware.faketouch
.
Dispositivos que têm interfaces de toque falsas fornecem um sistema de entrada do usuário que emula 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 têm interfaces de toque falsas, mas não touchscreens, realize uma das seguintes ações:
- Exclua dispositivos específicos no Google Play Console.
- Filtrar dispositivos sem hardware de tela touchscreen declarando explicitamente
android.hardware.touchscreen
como necessário para instalar seu app.
Recursos de software
A lista a seguir inclui os recursos de software que não têm suporte a 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 de protocolo de início de sessão (SIP, na sigla em inglês), compatível com videoconferência e mensagens instantâneas -
android.software.sip.voip
: serviço VoIP baseado em SIP, com suporte para videoconferência bidirecional
Permissões que sugerem requisitos de recurso
Algumas permissões solicitadas nos arquivos de manifesto podem criar solicitações implícitas para recursos de hardware e software. Ao solicitar essas permissões, você impede que seu app seja instalado em Chromebooks.
Para saber mais sobre como evitar que solicitações de permissão deixem seu app indisponível em Chromebooks, consulte a seção Entradas incompatíveis de manifesto desta página.
A tabela abaixo mostra as permissões que implicam requisitos de recursos que tornam um app incompatível com Chromebooks:
Categoria | Esta permissão | Implica que 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 |