El subsistema de Windows para Android (WSA) integra aplicaciones nativas de Android en el escritorio de Windows 11. Esta publicación le enseñará cómo instalar y configurar el subsistema de Windows para Android para su uso en el desarrollo de software. Será mucho más fácil para los desarrolladores replicar esto con el uso de herramientas de Windows para desarrolladores .
Siga leyendo para ver qué se requiere para ejecutar WSA y qué se requiere para orientarlo desde su desarrollo de Android. Windows Subsystem para Android está disponible para vista previa pública en Windows 11. Me acompañó un invitado sorpresa especial: Scott Hanselman .
Mira la repetición completa en YouTube
Table of Contents
¿Android en Windows?
- El subsistema de Windows para Android (WSA) ejecuta aplicaciones de Android en Windows 11
- Ejecuta Android 11 detrás de escena
- Similar a Subsistema de Windows para Linux (WSL)
- Viene con Amazon Appstore (solo EE. UU. por ahora)
- Se requiere una cuenta de Amazon para usar Amazon Appstore
- Permite la compatibilidad con el modo de desarrollador y la carga lateral
- Las aplicaciones de Android están en su menú de inicio
- Solo en Windows 11
- WSA utiliza una máquina virtual (VM)
Requisitos de hardware
- Requiere un SSD
- No pude ejecutarlo en una VM
- En Windows x64 (Intel o AMD) utiliza una capa de interoperabilidad
- En Windows ARM64 se ejecuta de forma nativa
- Windows 11 impone un requisito mínimo de pantalla de resolución de 720p (1280 × 720) con una pantalla de >9″.
Requisitos del sistema Documentación
WSA support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
Windows 11 support.microsoft.com/windows/86c11283-ea52-4782-9efd-7674389a7ba3
Instalación de WSA
- El Subsistema de Windows para Android está disponible para vista previa pública en Windows 11.
- Instale Amazon Appstore desde Microsoft Store.
- Alternativamente, simplemente instale una aplicación de Android desde Microsoft Store.
- docs.microsoft.com/en-us/windows/android/wsa/ & support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
Ciclo de vida de la máquina virtual de WSA
- Hay tres estados posibles para la máquina virtual que ejecuta aplicaciones con el subsistema de Windows para Android:
- Corriendo
- Ligero Doze: después de que no haya actividad en la aplicación durante 3 minutos. Desactivado por la actividad del usuario o una notificación de la aplicación.
- Sin correr: después de la actividad durante 7 minutos.
- Las transiciones entre estos estados se desencadenan por la actividad del usuario, la aplicación de Android o una notificación de la aplicación.
- Las aplicaciones de Android se pausan y luego se detienen cuando se minimiza su ventana.
- Documentos docs.microsoft.com/en-us/windows/android/wsa/
Rendimiento
- Los datos de este gráfico se recopilan a partir de los resultados de la CPU Geekbench 5 enviados por el usuario desde el navegador Geekbench: browser.geekbench.com
- Fuentes:
Prueba de rendimiento Passmark
- Fuentes: PassMark PerformanceTest Mobile
Informe de hardware
Notas: Geekbench 5 La
resolución se basa en el tamaño de la ventana de la aplicación de Android
320 PPI cuando se ejecuta a una escala del 200 %
160 PPI cuando se ejecuta a una escala del 100 %
Configuración y modo de desarrollador
- Inicie el subsistema de Windows para Android
- Desplácese hacia abajo y habilite el modo Desarrollador
- Copie la dirección IP
- Use ADB para conectarse -> adb connect172.24.203.234
- Opcional:
- Conéctese desde otras computadoras locales a través de su dirección IP y el puerto especificado
- Administrar la configuración de Android a través de un enlace
- Nota:
- El subsistema puede ejecutarse “según sea necesario” o “continuo”
- Los archivos le permiten buscar pero no transferir archivos
Profundizando en los detalles
¿Quién es Houdini?
- Puente ARM a x86 nativo de Intel.
- No hay mucha información pública oficial.
- También se utiliza en Intel Chromebooks y emuladores de escritorio como BlueStacks y NOX.
- Lee códigos de operación ARM y produce el comportamiento correspondiente en x86.
- binfmt_misc (formato binario misceláneo) La característica del kernel de Linux pasa ARM a Houdini.
- Archivos relacionados en WSA
- /system/lib64/libhoudini.so
- /sistema/lib/libhoudini.so
- /proveedor/lib/libhoudini.so
- /proveedor/lib64/libhoudini.so
- /proc/sys/fs/binfmt_misc
- /proveedor/etc/binfmt_misc/arm64_dyn
- /proveedor/etc/binfmt_misc/arm64_exe
- /proveedor/etc/binfmt_misc/arm_dyn
- /proveedor/etc/binfmt_misc/arm_exe
Carga lateral
- Conectar: adb conectar<ip>
- Comprobar conexión: dispositivos adb
- Instalar: adb install -r –no-streaming<archivo apk>
- Desinstalar: adb shell pm desinstalar -kcom.embarcadero.ProjectName
- Ejecutar aplicación: adb shell am start -ncom.embarcadero.ProjectName/com.embarcadero.firemonkey.FMXNativeActivity
- Aplicación Kill/Stop: adb shell am force-stop com.embarcadero.ProjectName
- Shell abierto: adb -d shell
- Archivo push: adb push <nombre de archivo local> /storage/emulated/0/Download
- Extraer archivo: adb pull /storage/emulated/0/Download <nombre de archivo local>
Orientación desde Delphi y RAD Studio IDE
- Un solo proyecto FMX ya puede apuntar a Windows o Android.
- WSA está en versión preliminar y aún no es totalmente compatible con Delphi, pero eso no nos detendrá…
- Conéctese con ADB y luego aparece en el IDE.
- Las aplicaciones de FireMonkey no se ejecutan o informan el error “Su dispositivo Android no es compatible con la arquitectura de la plataforma seleccionada”.
- ¡Carga lateral!
- Compilar para Android 64
- adb install -r –no-streaming FireMonkeyApp.apk
- También hacer redimensionable
Hacer que su aplicación de Android sea redimensionable
- Editar AndroidManifest.Template.xml
<aplicación android:resizeableActivity=“verdadero”>
- Tenga en cuenta que si tiene varias aplicaciones de Android en la misma carpeta, comparten el mismo AndroidManifest.Template.xml
- Permite que la aplicación de Android FMX cambie de tamaño según lo esperado.
Automatización del Manual
- Agregue manualadb.bat al menú Herramientas del IDE
- Herramientas -> Configurar Herramientas -> Agregar
- Con parámetros: $PATH($EXENAME) $NAMEONLY($PROJECT)
- Fuente: gist.github.com/jimmckeeth/3a453ccdb1a387644ca137b499d01879
Pruebas de fragmentos móviles
- La ubicación debe estar habilitada en Windows para que funcione en WSA
- La notificación aparece en el escritorio y puede activar WSA
Más información
- Diapositivas, enlaces, reproducción del seminario web: blogs.embarcadero.com/?p=134192
- Implementación de ADB GIST: gist.github.com/jimmckeeth/3a453ccdb1a387644ca137b499d01879
- Blog de introducción: blogs.windows.com/windows-insider/2021/10/20/introducing-android-apps-on-windows-11-to-windows-insiders/
- Subsistema de Windows para documentos de Android: docs.microsoft.com/en-us/windows/android/wsa/
- Notas de la versión de WSA: docs.microsoft.com/en-us/windows/android/wsa/release-notes
- Requisitos de hardware de WSA: support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
- Aplicaciones móviles en Windows: support.microsoft.com/windows/abed2335-81bf-490a-92e5-fe01b66e5c48
- Video de Scott en WSA: https://youtu.be/FN6zON_zKd8
- Scott Hanselman en línea: www.hanselman.com , www.hanselminutes.com y @shanselman
- Slight of ARM: Desmitificando Intel Houdini por Brian Hong de DefCon 29
- Vídeo: https://youtu.be/9oQ5XjA1aq0 Diapositivas: https://bit.ly/3IzoMkM
Próximos pasos
- Inicie una prueba de RAD Studio embarcadero.com/products/rad-studio/start-for-free
- Obtenga la edición comunitaria embarcadero.com/products/delphi/starter
- Ver ofertas especiales embarcadero.com/radoffer
- Suscríbete en YouTube youtube.com/c/EmbarcaderoTechnologies
- Síguenos en Twitter twitter.com/embarcaderotech
- Me gusta en Facebook facebook.com/embarcaderotech
- Síganos en LinkedIn linkedin.com/company/embarcadero-technologies
- Lee nuestro blog blogs.embarcadero.com