O Windows Subsystem for Android (WSA) integra aplicativos Android nativos à área de trabalho do Windows 11. Este post ensinará como configurar e configurar o Windows Subsystem para Android para uso no desenvolvimento de software. Será muito mais fácil para os desenvolvedores replicar isso com o uso de ferramentas do Windows para desenvolvedores .
Continue lendo para ver o que é necessário para executar o WSA, bem como o que é necessário para direcioná-lo em seu desenvolvimento Android. O Windows Subsystem para Android está disponível para visualização pública no Windows 11. Fui acompanhado por um convidado surpresa especial: Scott Hanselman .
Assista a reprise completa no YouTube
Table of Contents
Android no Windows?
- O Windows Subsystem for Android (WSA) executa aplicativos Android no Windows 11
- Executa o Android 11 nos bastidores
- Semelhante ao Windows Subsystem for Linux (WSL)
- Vem com Amazon Appstore (apenas nos EUA por enquanto)
- É necessária uma conta Amazon para usar a Amazon Appstore
- Permite suporte ao modo de desenvolvedor e sideload
- Aplicativos Android estão no seu menu iniciar
- Apenas no Windows 11
- O WSA utiliza uma máquina virtual (VM)
Requisitos de hardware
- Requer um SSD
- Não consegui executá-lo em uma VM
- No Windows x64 (Intel ou AMD) usa uma camada de interoperabilidade
- No Windows ARM64 ele é executado nativamente
- O Windows 11 impõe um requisito mínimo de tela de resolução de 720p (1280×720) com uma tela >9”.
Documentação de requisitos do sistema
WSA support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
Windows 11 support.microsoft.com/windows/86c11283-ea52-4782-9efd-7674389a7ba3
Instalação WSA
- O Windows Subsystem para Android está disponível para visualização pública no Windows 11.
- Instale a Amazon Appstore da Microsoft Store.
- Como alternativa, basta instalar um aplicativo Android da Microsoft Store.
- docs.microsoft.com/en-us/windows/android/wsa/ & support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
Ciclo de vida da VM WSA
- Há três estados possíveis para a VM executando aplicativos com o Windows Subsystem para Android:
- Correndo
- Soneca leve: depois de 3 minutos sem atividade no aplicativo. Desativado pela atividade do usuário ou uma notificação do aplicativo.
- Não correr: Após a atividade por 7 minutos.
- As transições entre esses estados são acionadas pela atividade do usuário, aplicativo Android ou uma notificação do aplicativo.
- Os aplicativos Android são pausados e interrompidos quando a janela é minimizada.
- Documentos docs.microsoft.com/en-us/windows/android/wsa/
atuação
- Os dados neste gráfico são coletados de resultados de CPU do Geekbench 5 enviados pelo usuário do navegador Geekbench: browser.geekbench.com
- Fontes:
Teste de desempenho de senha
- Fontes: PassMark PerformanceTest Mobile
Relatório de hardware
Observações: A partir do Geekbench 5, a
resolução é baseada no tamanho da janela do aplicativo Android
320 PPI ao executar em escala de 200%
160 PPI ao executar em escala de 100%
Configurações e modo de desenvolvedor
- Inicie o Windows Subsystem para Android
- Role para baixo e ative o modo de desenvolvedor
- Copie o endereço IP
- Use ADB para conectar -> adb connect172.24.203.234
- Opcional:
- Conecte-se de outros computadores locais através do seu endereço IP e porta especificada
- Gerenciar configurações do Android via link
- Observação:
- O subsistema pode ser executado “Conforme necessário” ou “Contínuo”
- Os arquivos permitem que você navegue, mas não transfira arquivos
Mergulhando em detalhes
Quem é Houdini?
- Ponte nativa ARM para x86 da Intel.
- Não há muita informação pública oficial.
- Também usado em Chromebooks Intel e emuladores de desktop como BlueStacks e NOX.
- Lê os opcodes ARM e produz o comportamento correspondente em x86.
- binfmt_misc (formato binário diverso) O recurso do kernel do Linux passa o ARM para o Houdini.
- Arquivos relacionados no WSA
- /system/lib64/libhoudini.so
- /system/lib/libhoudini.so
- /vendor/lib/libhoudini.so
- /vendor/lib64/libhoudini.so
- /proc/sys/fs/binfmt_misc
- /vendor/etc/binfmt_misc/arm64_dyn
- /vendor/etc/binfmt_misc/arm64_exe
- /vendor/etc/binfmt_misc/arm_dyn
- /vendor/etc/binfmt_misc/arm_exe
Carregamento lateral
- Conectar: adb conectar<ip>
- Verifique a conexão: dispositivos adb
- Instalar: adb install -r –no-streaming<arquivo apk>
- Desinstalar: adb shell pm uninstall -kcom.embarcadero.ProjectName
- Execute o aplicativo: adb shell am start -ncom.embarcadero.ProjectName/com.embarcadero.firemonkey.FMXNativeActivity
- Aplicativo Kill/Stop: adb shell am force-stop com.embarcadero.ProjectName
- Abrir shell: adb -d shell
- Arquivo push: adb push <nome do arquivo local> /storage/emulated/0/Download
- Arquivo de extração: adb pull /storage/emulated/0/Download <nome do arquivo local>
Segmentação do Delphi & RAD Studio IDE
- Um único projeto FMX já pode ter como alvo Windows ou Android.
- O WSA está em Preview e ainda não é totalmente suportado pelo Delphi, mas isso não vai nos parar….
- Conecte-se com o ADB e, em seguida, ele aparece no IDE.
- Os aplicativos FireMonkey não são executados ou relatam o erro “Seu dispositivo Android não suporta a arquitetura de plataforma selecionada”.
- Carregamento lateral!
- Compilar para Android 64
- adb install -r –no-streaming FireMonkeyApp.apk
- Também tornar redimensionável
Tornando seu aplicativo Android redimensionável
- Editar AndroidManifest.Template.xml
<aplicativo android:resizeableActivity=“verdadeiro”>
- Observe que, se você tiver vários aplicativos Android na mesma pasta, eles compartilham o mesmo AndroidManifest.Template.xml
- Permite que o aplicativo FMX Android seja redimensionado conforme o esperado.
Automatizando o manual
- Adicionar manualadb.bat ao menu Ferramentas do IDE
- Ferramentas -> Configurar Ferramentas -> Adicionar
- Com parâmetros: $PATH($EXENAME) $NAMEONLY($PROJECT)
- Fonte: gist.github.com/jimmckeeth/3a453ccdb1a387644ca137b499d01879
Testes de snippets para dispositivos móveis
- A localização deve ser habilitada no Windows para funcionar no WSA
- A notificação aparece na área de trabalho e pode ativar o WSA
Mais Informações
- Slides do webinar, links, repetição: blogs.embarcadero.com/?p=134192
- GIST de implantação do ADB: gist.github.com/jimmckeeth/3a453ccdb1a387644ca137b499d01879
- Blog de introdução: blogs.windows.com/windows-insider/2021/10/20/introducing-android-apps-on-windows-11-to-windows-insiders/
- Documentos do Windows Subsystem para Android: docs.microsoft.com/en-us/windows/android/wsa/
- Notas de versão do WSA: docs.microsoft.com/en-us/windows/android/wsa/release-notes
- Requisitos de hardware WSA: support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
- Aplicativos móveis no Windows: support.microsoft.com/windows/abed2335-81bf-490a-92e5-fe01b66e5c48
- Vídeo de Scott no WSA: https://youtu.be/FN6zON_zKd8
- Scott Hanselman online: www.hanselman.com , www.hanselminutes.com e @shanselman
- Slight of ARM: Desmistificando Intel Houdini por Brian Hong da DefCon 29
- Vídeo: https://youtu.be/9oQ5XjA1aq0 Slides: https://bit.ly/3IzoMkM
Próximos passos
- Inicie uma avaliação do RAD Studio embarcadero.com/products/rad-studio/start-for-free
- Obtenha o Community Edition embarcadero.com/products/delphi/starter
- Veja as ofertas especiais embarcadero.com/radoffer
- Inscreva-se no YouTube youtube.com/c/EmbarcaderoTechnologies
- Siga-nos no Twitter twitter.com/embarcaderotech
- Curta nossa página no Facebook facebook.com/embarcaderotech
- Siga-nos no LinkedIn linkedin.com/company/embarcadero-technologies
- Leia nosso blog blogs.embarcadero.com