Subsistema do Windows para Android™️

O Subsistema do Windows para Android™️ permite que seu dispositivo Windows 11 execute aplicativos Android que estão disponíveis na Amazon Appstore. O Android é uma marca registrada do Google LLC. Se você é um desenvolvedor interessado no direcionamento para dispositivos da área de trabalho do Windows e otimização para o sistema operacional Windows, este guia é para você.

Importante

A Microsoft está encerrando o suporte ao Windows Subsystem for Android™️ (WSA). Como resultado, a Amazon Appstore no Windows e todos os aplicativos e games dependentes do WSA não terão mais suporte a partir do dia 5 de março de 2025. Até lá, o suporte técnico ficará disponível para os clientes.
Os clientes que tiverem instalado os aplicativos Amazon Appstore ou Android antes de 5 de março de 2024 continuarão tendo acesso a esses aplicativos até a data de descontinuação de 5 de março de 2025. Entre em contato com a nossa equipe de suporte para mais perguntas em support.microsoft.com. SAgradecemos pelo apoio da nossa comunidade de desenvolvedores e continuamos comprometidos em ouvir os comentários à medida que melhoramos as experiências.

Para disponibilizar seu aplicativo Android em dispositivos Windows 11, você precisa:

Para obter mais informações ou suporte:

Este guia pode ajudar você a testar e depurar seu aplicativo Android no Windows:

GitHub do desenvolvedor

Quer saber mais sobre o roteiro do Subsistema do Windows para Android™️, discutir problemas com desenvolvedores e registrar bugs ou solicitações de recursos com a equipe do subsistema? Acesse o GitHub de Desenvolvedores do Subsistema Windows para Android™️.

Programa de visualização

O programa de versão prévia Subsistema Windows para Android ™️ permite que os usuários recebam compilações de pré-visualização antecipada do Subsistema Windows para Android ™ e do Amazon Appstore no Windows. Para obter mais detalhes, visite a página Programa de versão prévia.

Configurar seu ambiente de desenvolvimento

Para testar seu aplicativo Android no ambiente de área de trabalho do Windows, será necessário fazer algumas configurações.

Pré-requisitos

O Subsistema Windows para Android™️ está disponível no Windows 11. Seu dispositivo precisa atender a requisitos específicos: Requisitos do dispositivo.

Instalar a Amazon Appstore

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

  1. Instale a Amazon Appstore através da Microsoft Store. Ao selecionar Obter, a instalação do aplicativo será iniciada.
  2. Instalar um aplicativo Android por meio da Microsoft Store pela primeira vez, o que também instalará a Amazon Appstore.

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

Screenshot of Microsoft Store page featuring the Get button on the Amazon App Store

Observação

No momento, o 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™️, acesse: Iniciar > Todos os Aplicativos > Subsistema Windows para Android™️. Saiba mais sobre os recursos do aplicativo de configurações específicas: Gerenciar configurações de aplicativos móveis no Windows.

Screenshot of Latte app settings

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.

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

Primeiro, habilite o modo de desenvolvedor. Abra as configurações do Subsistema Windows para Android™️. Depois disso, habilite o Modo de desenvolvedor em Configurações avançadas.

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

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

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

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

    adb connect 127.0.0.1:58526
    

Conectar-se a um dispositivo de teste

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

  1. No dispositivo de teste (em que 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 em que o Android Studio e o SDK do Android 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 do "ipconfig" do dispositivo de teste. Você também pode implantar e depurar aplicativos no Android Studio.

Para usar o ADB (Android Debug Bridge) para conectar sua estação de trabalho de desenvolvimento diretamente ao dispositivo Android para que você possa instalar pacotes e avaliar alterações, confira 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 aplicativo do Android) e o adb (Android Debug Bridge).

Para depurar um APK usando o adb:

  1. Siga as etapas para se conectar à VM do Subsistema Windows para Android™️.

  2. Instale o APK usando o comando de instalação adb: adb install app-debug.apk

    Saída esperada:

    Performing Streamed Install
    Success
    
  3. Uma notificação bem-sucedida de "aplicativo instalado" será exibida no menu de notificação do Windows e o aplicativo será inicializado depois de selecionado.

Criação de APKs Universais

O Subsistema Windows para Android™️ utiliza a Intel Bridge Technology para habilitar aplicativos ARM em processadores baseados em x86. Os aplicativos ARM serão executados nativamente em processadores baseados no ARM. A camada de emulação induzirá uma sobrecarga de desempenho. Para obter 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, projetados para dispositivos portáteis, que provavelmente exigirão atualizações no código do seu aplicativo Android, para serem compatíveis durante a execução em um dispositivo de área de trabalho do Windows por meio da Amazon Appstore.

Entrada por teclado

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

Para pressionamentos de teclas que não puderem ser previstos 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.

Por exemplo, alguns jogos já podem ser compatíveis com a movimentação facilitada por teclado, por meio das teclas wasd, juntamente com a entrada por toque.

Veja a seguir entradas de teclado para as quais os desenvolvedores devem considerar atualizações de código ao compilar para dispositivos Windows 11:

  • Tecla Enter
  • Navegação com a tecla de direção e com a tecla TAB
  • Cor de realce de alteração do item selecionado
  • Atalhos baseados em Ctrl

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

Entrada por mouse

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

  • Clicar com o botão direito do mouse
  • Dicas de ferramenta/Texto ao passar o mouse
  • Efeitos da passagem do mouse
  • Ação da roda de rolagem do mouse
  • Arrastar e soltar

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

Gerenciamento e dimensionamento de janelas

Ao contrário dos fatores forma móveis tradicionais, os aplicativos Android em execução no Windows 11 podem ser redimensionados livremente, devem ser responsivos durante o redimensionamento e podem ser encaixados usando ações/gestos do Windows.

Requisito mínimo de tela

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

Letterbox e Pillarbox

Quando a taxa de proporção do tamanho de uma janela não se alinha entre os tamanhos da tela do dispositivo em que a janela está sendo exibida, o resultado pode ser o formato Letterbox (a janela fica mais larga do que alta ou horizontalmente mais longa) ou Pillarbox (a janela fica mais estreita ou verticalmente mais longa). O resultado são as barras que são colocadas nos lados da janela para centralizá-la. Essas barras podem ter temas claros ou escuros, dependendo das configurações do sistema selecionadas. Isso só ocorrerá se for necessário quando o aplicativo Android for encaixado ou maximizado, permitindo que os aplicativos Android aproveitem os recursos avançados de encaixe do Windows e integrem-se ao modelo de janelas.

Letterboxing and Pillarboxing example showing blank bars that center the window

Considerações adicionais de redimensionamento

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

  • Tamanho inicial de inicialização
  • Dimensões da janela
    • Limites do conteúdo
    • Redimensionamento com forma livre
  • Orientação da tela

Saiba mais sobre como otimizar para cenários de redimensionamento de janelas em dispositivos da área de trabalho seguindo o Guia de Gerenciamento de Janelas nos documentos do Android.

Eventos do ciclo de vida do aplicativo

O desenvolvimento de aplicativos Android para um ambiente de várias janelas afeta os eventos do ciclo de vida que você escolhe utilizar no aplicativo. Embora a substituição do evento onPause possa alcançar os resultados desejados em um telefone ou tablet, normalmente é o evento errado a ser usado para uma alteração da experiência do usuário do aplicativo.

Confira a documentação do Android para obter uma descrição dos eventos do ciclo de vida. Na maioria das vezes, é melhor usar o evento onStop, não os eventos onPause ou onUserLeaveHint. Na verdade, muitas implementações do Android de várias janelas não fornecem a notificação onUserLeaveHint e, portanto, uma lógica comercialmente crítica que esteja nesse manipulador de eventos não será chamada nessas plataformas, incluindo o Subsistema Windows para Android™️.

Considerações de ciclo de vida da VM

O Subsistema Windows para Android™️ utiliza uma VM (máquina virtual) 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. Executando
  2. Hibernação leve: ativada se não houver nenhuma atividade de aplicativo por 3 minutos. Desativada pela atividade do usuário ou por uma notificação de aplicativo.
  3. Não Executando: ativado se não houver nenhuma atividade de aplicativo por 7 minutos.

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

VM lifecycle graph showing the running, lightweight doze, and not running

Propriedades de VM

As propriedades da VM do Subsistema Windows para Android™️ estão listadas abaixo. Não é recomendável incluir esses valores no código, pois isso poderá causar incompatibilidades no futuro.

Propriedade Valor
Build.MANUFACTURER Microsoft Corporation
Build.MODEL Subsistema para Android(TM)
Build.VERSION.SDK_INT 33
Build.BOARD windows

Redirecionar para aplicativos do Windows

O Subsistema 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 com suporte 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 com suporte 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. Defina a ação de intenção para com.microsoft.windows.LAUNCH_URI e adicione uma cadeia de caracteres extra à intenção chamada com.microsoft.windows.EXTRA_URI com o URI personalizado como o valor. Por exemplo, para iniciar o aplicativo Calculadora Windows de um aplicativo 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™️ (or running on an older build that did not contain this feature).
}

Segurança

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

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

Desinstalar 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 apenas desinstalará o aplicativo (mesmo comportamento que os aplicativos 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 com a Amazon Appstore no Windows, experimente as seguintes etapas de solução de problemas:

  1. Selecione a Pesquisa do Windows na barra de tarefas do Windows.
  2. Pesquise por "Amazon Appstore" e clique com o botão direito do mouse no ícone da Amazon Appstore.
  3. Selecione "Configurações do Aplicativo" nas opções da lista suspensa.
  4. Selecione "Armazenamento e Cache" e clique em "Limpar Armazenamento" e "Limpar Cache".
  5. Volte e selecione "Forçar Parada".
  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 Windows para Android™️ ou para deixar comentários usando o Hub de Comentários, confira Solucionar problemas e perguntas frequentes dos aplicativos móveis no Windows.

Para qualquer outra dúvida do desenvolvedor e suporte, use a marca Subsistema Windows para Android™️ no Microsoft QA.

Recursos adicionais