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.
- Aviso de descontinuação da Amazon Appstore no Windows 11.
- Repositório do Subsistema do Windows para Android™️ no GitHub
- Aplicativos do Amazon Appstore
- Acessibilidade para aplicativos móveis no Windows
Para testar seu aplicativo Android no ambiente de área de trabalho do Windows, será necessário fazer algumas configurações.
Requisitos do dispositivo.
A Microsoft Store instala automaticamente o Subsistema Windows para Android™️ silenciosamente em segundo plano quando uma das seguintes ações do usuário é realizada:
- Instale a Amazon Appstore através da Microsoft Store. Ao selecionar Obter, a instalação do aplicativo será iniciada.
- 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.
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.
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.
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.
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.
Para conectar-se à VM do Subsistema Windows para Android™️ para depuração:
Inicie um aplicativo Android que foi instalado usando o Amazon Appstore.
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
Para se conectar a um dispositivo de teste (com o Subsistema Windows para Android™️ instalado) na mesma rede do Windows/Mac:
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
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.
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:
Siga as etapas para se conectar à VM do Subsistema Windows para Android™️.
Instale o APK usando o comando de instalação adb:
adb install app-debug.apk
Saída esperada:
Performing Streamed Install Success
Uma notificação bem-sucedida de "aplicativo instalado" aparecerá no menu de notificação do Windows e o aplicativo será inicializado depois de selecionado.
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.
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.
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, através das teclas w
a
s
d
, 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:
- Guia de compatibilidade de entrada nos documentos do Android
- Guia de manipulação de entrada por teclado nos documentos do Android
- Guia de uso de gestos de toque nos documentos do Android
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:
- Guia de compatibilidade de entrada nos documentos do Android
- Referência InputDevice nos documentos do Android
- Referência SOURCE_MOUSE nos documentos do Android
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.
O Windows 11 impõe um requisito mínimo de tela com resolução de 720p (1280x720) e uma tela de >9 polegadas.
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.
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.
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
, e 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™️.
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™️:
- Executando
- 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.
- 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.
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 |
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).
}
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.
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.
Se você encontrar problemas específicos com a Amazon Appstore no Windows, experimente as seguintes etapas de solução de problemas:
- Selecione a Pesquisa do Windows na barra de tarefas do Windows.
- Pesquise por "Amazon Appstore" e clique com o botão direito do mouse no ícone Amazon Appstore.
- Selecione "Configurações do aplicativo" nas opções da lista suspensa.
- Selecione "Armazenamento e cache" e clique em "Limpar armazenamento" e "Limpar cache".
- Volte e selecione "Forçar parada".
- Feche a janela Configurações da Amazon Appstore.
- 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.
Comentários do Windows developer
O Windows developer é um projeto código aberto. Selecione um link para fornecer comentários: