Partilhar via


Subsistema Windows para Android™️

O Subsistema Windows para Android™️ permite que seu dispositivo Windows 11 execute aplicativos Android disponíveis na Amazon Appstore. Android é uma marca comercial da Google LLC. Se você é um desenvolvedor interessado em segmentar dispositivos desktop Windows e otimizar para o sistema operacional Windows, este guia é para você.

Importante

A partir de 5 de março de 2025, o Subsistema Windows para Android™ e a Amazon Appstore não estarão mais disponíveis na Microsoft Store.

Configurar seu ambiente de desenvolvimento

Para testar seu aplicativo Android no ambiente de área de trabalho do Windows, será necessário um pouco de configuração.

Pré-requisitos

Requisitos do dispositivo.

Instalar a Amazon Appstore

A Microsoft Store instalará automaticamente o Subsistema Windows para Android™️ silenciosamente em segundo plano quando uma das duas seguintes ações do usuário for executada:

  1. Instale a Amazon Appstore a partir da Microsoft Store. Selecionar Obter iniciará a instalação do aplicativo.
  2. Instale um aplicativo Android da Microsoft Store pela primeira vez, que também instalará a Amazon Appstore.

O aplicativo Amazon Appstore aparecerá no menu Iniciar do Windows 11 e estará disponível na pesquisa, oferecendo um catálogo de aplicativos Android. O aplicativo Subsistema do Windows para Android™️ , que permite controlar as configurações e os recursos do aplicativo móvel, também aparecerá no menu Iniciar.

Captura de ecrã da página da Microsoft Store com o botão Obter na Amazon App Store

Observação

A Amazon Appstore no Windows (um requisito para executar aplicativos Android no Windows 11) está disponível em regiões selecionadas.

Configurações do Subsistema Windows para Android™️

Para modificar as configurações do Subsistema Windows para Android™️, vá para: Iniciar > Todos os Aplicativos > Subsistema Windows para Android™️. Saiba mais sobre as funcionalidades específicas da aplicação de definições: Gerir definições para aplicações móveis no Windows.

Captura de tela das configurações do aplicativo Latte

Testar e depurar

Para testar e depurar seu aplicativo em um dispositivo Windows 11 usando o Subsistema Windows para Android™️, as etapas de configuração a seguir são necessárias.

Ativar o modo de desenvolvedor nas Configurações do Windows

Você deve primeiro habilitar o modo de desenvolvedor. Abra as configurações de do Windows Subsistema para Android™️. Uma vez aberto, ative modo de desenvolvedor em Configurações avançadas.

Conectar-se ao Subsistema Windows para Android™️ para depuração

Para se conectar à VM do Subsistema do Windows para Android™️ para depuração:

  1. Inicie um aplicativo Android que foi instalado usando a Amazon Appstore.

  2. Você pode se conectar usando adb connect com o seguinte comando (você deve ter adb instalado):

    adb connect 127.0.0.1:58526
    

Conectar-se a um dispositivo de teste

Para ligar a um dispositivo de teste (com o Subsistema Windows para Android™️ instalado) na mesma rede a partir do Windows/Mac:

  1. No dispositivo de teste (onde o Subsistema Windows para Android™️ está instalado), abra uma janela do PowerShell e identifique o endereço IP do dispositivo de teste executando o comando:

    ipconfig
    
  2. Usando o terminal do dispositivo de depuração onde o Android Studio e o Android SDK estão instalados (Mac/Windows), digite o comando:

    adb connect <TEST DEVICE IP ADDRESS>:58526
    

O <TEST DEVICE IP ADDRESS> pode ser encontrado na saída de "ipconfig" do dispositivo de teste. Você também pode implantar e depurar aplicativos do Android Studio.

Para usar o Android Debug Bridge (ADB) para conectar sua estação de trabalho de desenvolvimento diretamente ao seu dispositivo Android para que você possa instalar pacotes e avaliar alterações, consulte Android Debug Bridge nos documentos do Android Open Source Project.

Depurar seu aplicativo

Embora os aplicativos devam ser instalados usando a Amazon Appstore, a depuração de um aplicativo Android em um dispositivo Windows é possível usando um APK (pacote de aplicativos Android) e adb (Android Debug Bridge).

Para depurar um APK usando adb:

  1. Siga as etapas para se conectar ao Subsistema Windows para Android™️ VM acima.

  2. Instale o APK usando o comando adb install: adb install app-debug.apk

    Resultados esperados:

    Performing Streamed Install
    Success
    
  3. Uma notificação bem-sucedida de "aplicativo instalado" aparecerá no menu de notificação do Windows e o aplicativo será iniciado uma vez selecionado.

Construindo APKs universais

O Subsistema Windows para Android™️ utiliza a tecnologia Intel Bridge para habilitar aplicativos Arm em processadores baseados em x86. Os aplicativos Arm serão executados em processadores baseados em Arm nativamente. A camada de emulação induzirá uma sobrecarga de desempenho – para um desempenho ideal, envie seu aplicativo para as arquiteturas x86-64 e Arm64.

Considerações sobre compatibilidade de entrada para dispositivos Windows

Há alguns comportamentos de entrada exclusivos a serem considerados que provavelmente exigirão atualizações no código do aplicativo Android, projetado para dispositivos portáteis, para serem compatíveis ao executar em um dispositivo de desktop Windows por meio da Amazon Appstore.

Entrada de teclado

Para campos de entrada de texto manipulados por um método de entrada de teclado virtual (ou IME) na tela, como EditText, os aplicativos devem se comportar conforme o esperado. (classe EditText na documentação do Android).

Para pressionamentos de teclas que não podem ser antecipados pela estrutura, os aplicativos precisarão lidar com o comportamento por conta própria. Se isso já estiver implementado no aplicativo, nenhum trabalho extra será necessário.

Como exemplo, alguns jogos já podem suportar movimentos facilitados via teclado, com as teclas wasd, juntamente com a entrada por toque.

A seguir estão as entradas de teclado para as quais os desenvolvedores devem considerar atualizações de código ao criar para dispositivos Windows 11:

  • Digite a chave
  • Tecla de seta e tecla de tabulação Navegação
  • Alterar a cor de realce do item selecionado
  • Atalhos baseados em Ctrl

Saiba mais sobre como otimizar esses cenários de entrada de teclado em dispositivos desktop seguindo a documentação do Android:

Entrada do mouse

Os desenvolvedores devem considerar a atualização do código para as seguintes entradas de mouse ao criar para dispositivos Windows:

  • Clique com o botão direito do rato
  • Dicas de ferramentas / Texto ao passar o rato
  • Efeitos de Hover
  • Ação da roda de rolagem do mouse
  • Arrastar e soltar

A entrada do mouse, semelhante à entrada do teclado, deve seguir as diretrizes oficiais do aplicativo Android. Isso significa usar a InputDevice classe emparelhada com a SOURCE_MOUSE constante. Saiba mais sobre como otimizar para esses cenários de entrada do mouse em dispositivos desktop seguindo a documentação do Android:

Gestão e redimensionamento de janelas

Ao contrário dos formatos móveis tradicionais, os aplicativos Android a correr no Windows 11 podem ser redimensionados livremente, devem ser responsivos no redimensionamento dos mesmos e podem ser encaixados com ações/gestos do Windows.

Requisitos mínimos de ecrã

O Windows 11 impõe um requisito mínimo de tela de resolução 720p (1280x720) com uma tela de >9".

Letra e pilar boxe

Quando a proporção do tamanho de uma janela não corresponde aos tamanhos de ecrã do dispositivo onde está a ser exibida, o resultado pode ser Letterboxing (a janela é mais larga do que alta, ou mais longa horizontalmente) ou Pillarboxing (a janela é mais estreita do que larga, ou mais longa verticalmente). O resultado são barras sendo colocadas nas laterais da janela para centralizá-la. Essas barras podem ter temas claros ou escuros, dependendo das configurações do sistema selecionadas. Isto ocorrerá apenas quando necessário, quando a aplicação Android estiver encaixada ou maximizada, permitindo que as aplicações Android tirem partido dos avançados recursos de encaixe do Windows e se integrem ao sistema de janelas.

exemplo de Letterboxing e Pillarboxing mostrando barras em branco que centralizam a janela

Considerações adicionais sobre redimensionamento

O seguinte também deve ser considerado ao atualizar um aplicativo Android para ser executado em um dispositivo Windows 11 em relação ao gerenciamento e redimensionamento de janelas:

  • Tamanho inicial do lançamento
  • Dimensões das janelas
    • Limites de conteúdo
    • Redimensionamento de forma livre
  • Orientação do ecrã

Saiba mais sobre como otimizar cenários de redimensionamento de janelas em dispositivos desktop seguindo o guia de Gerenciamento de janelas node documentos do Android .

Eventos do ciclo de vida do aplicativo

O desenvolvimento de aplicativos Android para um ambiente de várias janelas tem um impacto nos eventos do ciclo de vida que você escolhe utilizar em seu aplicativo. Embora substituir o evento onPause possa alcançar os resultados desejados num telefone ou tablet, geralmente é o evento inadequado para usar se estiver a alterar a experiência do utilizador da sua aplicação.

Consulte a documentação do Android para uma descrição dos eventos do ciclo de vida. Na maioria das vezes, quererás usar o evento onStop e não os eventos onPause ou onUserLeaveHint. Na verdade, muitas implementações Android multi-janela não entregam a onUserLeaveHint notificação e, portanto, qualquer lógica crítica de negócios que possa estar nesse manipulador de eventos não será chamada nessas plataformas, incluindo o Subsistema Windows para Android™️.

Considerações sobre o ciclo de vida da VM

O Subsistema Windows para Android™️ utiliza uma máquina virtual (VM) que fornece compatibilidade com a estrutura AOSP e dispositivos como teclados, mouses, toque, caneta, etc.

Há três estados possíveis para a VM que executa aplicativos com o Subsistema Windows para Android™️:

  1. Correr
  2. Modo leve de repouso: ativado após 3 minutos sem atividade de qualquer aplicativo. Desativado pela atividade do usuário ou por uma notificação do aplicativo.
  3. Não está em execução: ativado após nenhuma atividade do aplicativo por 7 minutos.

As transições entre esses estados são acionadas pela atividade do usuário, como a inicialização ou a interação com o aplicativo Android ou uma notificação do aplicativo. Os aplicativos Android são pausados e, em seguida, interrompidos quando a janela é minimizada.

gráfico do ciclo de vida da VM mostrando os estados em execução, em estado leve de adormecimento e não em execução

Propriedades VM

As propriedades do Subsistema Windows para Android™️ VM estão listadas abaixo. A codificação desses valores não é recomendada, pois isso pode causar incompatibilidades futuras.

Propriedade Valor
Build.MANUFACTURER Corporação Microsoft
Build.MODEL Subsistema para Android(TM)
Build.VERSION.SDK_INT 33
Build.BOARD Windows

Redirecionar para aplicativos do Windows

O Subsistema do Windows para Android™️ redireciona automaticamente as intenções de arquivos e esquemas de URI comuns para o manipulador de arquivo/protocolo padrão do Windows correspondente (se vários filtros de intenção corresponderem, os usuários verão uma opção "Aplicativo padrão do Windows" na caixa de diálogo do seletor). As intenções de arquivo suportadas incluem ACTION_VIEW, ACTION_EDIT, ACTION_SEND e ACTION_SEND_MULTIPLE, que copiam o arquivo para a pasta Downloads do Windows antes de abri-lo. As intenções de URI suportadas incluem ACTION_VIEW para os esquemas http/https e ACTION_VIEW e ACTION_SENDTO para o esquema mailto.

Os aplicativos Android também podem redirecionar manualmente para aplicativos do Windows usando esquemas de URI personalizados. Define a ação de intenção para com.microsoft.windows.LAUNCH_URI e adicione uma cadeia de caracteres extra à intenção nomeada com.microsoft.windows.EXTRA_URI, usando o URI personalizado como valor. Por exemplo, para iniciar a aplicação Calculadora do Windows a partir de uma aplicação Android (Java):

Intent intent = new Intent("com.microsoft.windows.LAUNCH_URI");
intent.putExtra("com.microsoft.windows.EXTRA_URI", "ms-calculator:");
 
try {
    startActivity(intent);
} catch (ActivityNotFoundException e) {
    // Not running in Windows Subsystem for Android&trade;️ (or running on an older build that did not contain this feature).
}

Segurança

Tanto os drivers de modo kernel do Windows quanto os aplicativos do Windows executados em nível de integridade médio (IL) podem inspecionar contêineres arbitrários do Android e a memória do aplicativo Android. Não há planos para adicionar deteção para deteção de cheats/macro/bot/comportamentos suspeitos a curto prazo.

Os desenvolvedores que consultam getSecurityLevel obterão SECURITY_LEVEL_SW_SECURE_CRYPTO. Saiba mais sobre getSecurityLevel no guia de referência da API Android .

Desinstalando o Subsistema Windows para Android™️

Você pode desinstalar o Subsistema Windows para Android™️, mas observe que todos os aplicativos associados também serão desinstalados.

  • A desinstalação da Amazon Appstore desinstalará o Subsistema Windows para Android™️ e todos os outros aplicativos Android.
  • A desinstalação de um aplicativo da Amazon Appstore desinstalará apenas o aplicativo (mesmo comportamento dos aplicativos do Windows).
  • A desinstalação do Subsistema Windows para Android™️ desinstalará a Amazon Appstore e todos os aplicativos Android.

Solução de problemas

Se você encontrar problemas específicos da Amazon Appstore no Windows, tente as seguintes etapas de solução de problemas:

  1. Selecione Pesquisa do Windows na barra de tarefas do Windows.
  2. Procure por "Amazon Appstore" e clique com o botão direito do mouse no ícone da Amazon Appstore.
  3. Selecione "Configurações do aplicativo" no menu suspenso.
  4. Selecione "Armazenamento e cache" e clique em "Limpar armazenamento" e "Limpar cache".
  5. Volte e selecione "Force Stop".
  6. Feche a janela Configurações da Amazon Appstore.
  7. Reinicie a Amazon Appstore.

Para obter mais etapas de solução de problemas relacionadas ao aplicativo Configurações do Subsistema do Windows para Android™️ ou para deixar comentários usando o Hub de Feedback, consulte Solução de problemas e perguntas frequentes para aplicativos móveis no Windows.