Ambiente para desenvolvedores

Poder executar apps Android em um Chromebook é ótimo. Ele oferece aos usuários acesso ao vasto ecossistema do Android e oferece aos desenvolvedores Android a oportunidade de alcançar usuários do ChromeOS.

O ChromeOS oferece aos desenvolvedores Android ferramentas para implantar e testar apps em Chromebooks. Para melhorar a experiência dos usuários, verifique seus apps em diferentes formatos.

Se você estiver implantando seu app Android diretamente do ChromeOS (usando o Android Studio no Chromebook) ou de outro dispositivo, você pode usar o Android Debug Bridge para implantar seu app e depurar diferentes interações com os Chromebooks. Para mais detalhes, consulte as etapas a seguir.

Ativar depuração do ADB

Antes, o uso do adb em um Chromebook só era possível no modo de desenvolvedor. Desde o Chrome 81, os desenvolvedores que não precisam do shell podem manter os dispositivos fora do modo de desenvolvedor e ainda implantar apps desenvolvidos diretamente no ChromeOS. Siga estas etapas:

  1. Acesse as Configurações e ative o Linux, caso ainda não tenha feito isso.

  2. Quando o Linux estiver disponível, abra as configurações dele.

  3. Abra a opção Desenvolver apps Android.

  4. Alterne a opção Ativar depuração do adb. O Chromebook será reiniciado.

  5. Depois que o Chromebook reiniciar, uma mensagem informará que pode haver aplicativos que não foram transferidos por download da app store no dispositivo.

  6. O adb agora está disponível para implantar apps no Chromebook, executar comandos de depuração e interagir diretamente com o dispositivo.

Para garantir que seu app Android funcione bem em vários dispositivos Chromebook e formatos disponíveis, o Google recomenda que você teste o app nos seguintes dispositivos:

  • Chromebook baseado em ARM
  • Chromebook baseado em x86
  • Dispositivos com e sem tela touchscreen
  • Um dispositivo conversível que alterna entre laptop e tablet
  • Dispositivo com stylus

Implantar pelo ChromeOS

Depois de ativar a depuração do adb, você poderá carregar um app Android diretamente no dispositivo ChromeOS usando o Android Studio. Se você tiver um pacote de aplicativo Android (APK), poderá carregá-lo usando o terminal. Essas opções são descritas nas seções a seguir.

Implantar com o Android Studio

Depois de configurar o Android Studio e o adb, conforme descrito neste guia, você pode enviar seus apps para o contêiner do Android no Chromebook diretamente do Android Studio. O Chromebook aparece como uma opção no menu do dispositivo:

Quando você envia seu app para um Chromebook, a caixa de diálogo de autorização do adb é exibida. Depois de dar a autorização, seu aplicativo será iniciado em uma nova janela.

Agora você pode implantar o app no Chromebook para testá-lo e depurá-lo.

Implantar com o terminal

Siga estas etapas para implantar seu app em um Chromebook usando o terminal:

  1. Instale o adb, se necessário, usando o seguinte comando:

    sudo apt install adb
    
  2. Conecte-se ao dispositivo usando o seguinte comando:

    adb connect arc
    
  3. Uma caixa de diálogo de autorização para depuração USB será exibida. Dê a autorização:

  4. Instale o app a partir do terminal usando o seguinte comando:

    adb install [path to your APK]
    

Implantar de outro dispositivo

Se não for possível usar o método anterior e precisar enviar seu app por push de outro dispositivo, conecte o dispositivo ao adb usando uma conexão USB ou um endereço de rede.

Conectar ao adb por uma rede

Siga estas etapas para se conectar ao adb por uma rede:

  1. Confira se você ativou a depuração do adb.

  2. Para encontrar o endereço IP do seu Chromebook, siga estas etapas:

    • Clique no relógio na área inferior direita da tela.
    • Clique no ícone de engrenagem.
    • Clique no tipo de rede à qual você está conectado, como Wi-Fi ou de dados móveis, e, em seguida, no nome da rede.
    • Anote o endereço IP.

Conecte-se ao Chromebook:

  1. Retorne à sua máquina de desenvolvimento e use o ADB para se conectar ao Chromebook usando o endereço IP:

    adb connect <ip_address>
    
  2. No Chromebook, clique em Permitir quando solicitado para permitir o depurador. A sessão do ADB é estabelecida.

Resolver problemas de depuração do adb em uma rede

Às vezes, o dispositivo ADB mostra que está off-line quando tudo está conectado corretamente. Nesse caso, siga estas etapas para resolver o problema:

  1. Desative a depuração ADB nas Opções do desenvolvedor.
  2. Em uma janela de terminal, execute adb kill-server.
  3. Ative a opção Depuração adb novamente.
  4. Em uma janela de terminal, tente executar adb connect.
  5. Clique em Permitir quando solicitado para permitir a depuração. Sua sessão do ADB é estabelecida.

Conectar ao adb por USB

Para enviar o APK de outro dispositivo para o Chromebook, inicie o ChromeOS no modo de desenvolvedor para configurar o Chromebook e enviar apps da máquina host.

Siga estas etapas para entrar no modo de desenvolvedor:

  1. Ative a depuração do adb.
  2. Verifique se o dispositivo tem suporte à depuração USB.
  3. Pressione Control+Alt+T para iniciar o terminal do ChromeOS.
  4. Digite shell para acessar o shell do comando bash:

    crosh> shell
    chronos@localhost / $
    
  5. Digite os seguintes comandos para configurar o dispositivo:

    $ sudo crossystem dev_enable_udc=1
    $ sudo reboot
    
  6. Após a reinicialização, abra o terminal novamente e execute o seguinte comando para ativar o adb na porta USB do Chromebook:

    $ sudo ectool usbpd <port number> dr_swap
    

Use esse comando sempre que desconectar e reconectar um cabo USB. Para garantir que o Chromebook esteja no modo de porta virada (UFP, na sigla em inglês), execute ectool usbpd <port number>.

Para estabelecer uma sessão ADB, siga estas etapas:

  1. Conecte um cabo USB a uma porta compatível no dispositivo.
  2. Execute adb devices nas ferramentas de plataforma do SDK do Android na máquina host para conferir seu Chromebook listado como dispositivo com suporte ao adb.
  3. No Chromebook, clique em Permitir quando solicitado a permitir o depurador. A sessão do ADB é estabelecida.