DelphiNotíciaWebinar

Android no Windows 11: a perspectiva de um desenvolvedor

windowssubsystemforandroid3

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

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”.
android01-6176918-2

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

android02-7199513-2

Ciclo de vida da VM WSA

android03-4969074-2
  • 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

android04-6221899-2

Teste de desempenho de senha

android05-7822183-2

Relatório de hardware

android06-8432563-2

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

android07-6743286-2
  • 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

android08-8895456-2

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

android09-8753876-2
  • 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

android10-4036795-2
  • 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

android11-2170348-2

Testes de snippets para dispositivos móveis

android13-1010219-2
android12-7163568-2
  • 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

Próximos passos


Coding Boot Camp

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Sobre o autor

Defensor do desenvolvedor chefe da Embarcadero Technologies.

Leave a Reply

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

IN THE ARTICLES