BeiträgeDelphiWebinar

Android unter Windows 11: Die Perspektive eines Entwicklers

windowssubsystemforandroid3

Das Windows-Subsystem für Android (WSA) integriert native Android-Apps in den Windows 11-Desktop. In diesem Beitrag erfahren Sie, wie Sie das Windows-Subsystem für Android für die Verwendung in der Softwareentwicklung einrichten und konfigurieren. Es wird für Entwickler viel einfacher sein, dies mit Hilfe von Windows-Tools für Entwickler zu replizieren .

Lesen Sie weiter, um zu sehen, was erforderlich ist, um WSA auszuführen, und was erforderlich ist, um es von Ihrer Android-Entwicklung aus anzusprechen. Windows Subsystem für Android ist für die öffentliche Vorschau auf Windows 11 verfügbar. Ich wurde von einem besonderen Überraschungsgast begleitet: Scott Hanselman . 

Sehen Sie sich die vollständige Wiederholung auf YouTube an

 

Android unter Windows?

  • Das Windows-Subsystem für Android (WSA) führt Android-Apps unter Windows 11 aus
  • Läuft hinter den Kulissen mit Android 11
  • Ähnlich dem Windows-Subsystem für Linux (WSL)
  • Kommt mit Amazon Appstore (vorerst nur USA)
    • Für die Nutzung des Amazon Appstore ist ein Amazon-Konto erforderlich
  • Ermöglicht die Unterstützung des Entwicklermodus und das Laden von Seiten
  • Android-Apps befinden sich in Ihrem Startmenü
  • Nur unter Windows 11
  • WSA verwendet eine virtuelle Maschine (VM)

Hardware-Anforderungen

  • Benötigt eine SSD
  • Ich konnte es nicht in einer VM ausführen
  • Unter Windows x64 (Intel oder AMD) wird eine Interoperabilitätsschicht verwendet
  • Auf Windows ARM64 läuft es nativ
  • Windows 11 erzwingt eine Mindestbildschirmanforderung von 720p-Auflösung (1280×720) mit einem >9-Zoll-Bildschirm.
android01-6176918-2

Dokumentation zu den Systemanforderungen
WSA support.microsoft.com/windows/f8d0abb5-44ad-47d8-b9fb-ad6b1459ff6c
Windows 11 support.microsoft.com/windows/86c11283-ea52-4782-9efd-7674389a7ba3

WSA-Installation

android02-7199513-2
 

WSA-VM-Lebenszyklus

android03-4969074-2
 
  • Es gibt drei mögliche Zustände für die VM, auf der Apps mit dem Windows-Subsystem für Android ausgeführt werden:
    • Laufen
    • Lightweight Doze: Nach 3 Minuten ohne App-Aktivität. Deaktiviert durch Benutzeraktivität oder eine App-Benachrichtigung.
    • Läuft nicht: Nach Aktivität für 7 Minuten.
  • Übergänge zwischen diesen Zuständen werden durch Benutzeraktivität, Android-App oder eine App-Benachrichtigung ausgelöst.
  • Android-Apps werden angehalten und dann gestoppt, wenn ihr Fenster minimiert wird.
  • Dokumente docs.microsoft.com/en-us/windows/android/wsa/

Leistung

android04-6221899-2

Passmark-Leistungstest

android06-8432563-2

Hinweise: Von Geekbench 5 Die
Auflösung basiert auf der Fenstergröße der Android-App
320 PPI bei Ausführung mit 200 % Skalierung
160 PPI bei Ausführung mit 100 % Skalierung

Einstellungen & Entwicklermodus

android07-6743286-2
 
  • Starten Sie das Windows-Subsystem für Android
  • Scrollen Sie nach unten und aktivieren Sie den Entwicklermodus
  • Kopieren Sie die IP-Adresse
  • Verwenden Sie ADB zum Verbinden -> adb connect172.24.203.234
  • Optional:
    • Verbinden Sie sich von anderen lokalen Computern über Ihre IP-Adresse und den angegebenen Port
    • Android-Einstellungen per Link verwalten
  • Notiz:
    • Das Subsystem kann „nach Bedarf“ oder „kontinuierlich“ ausgeführt werden
    • Mit Dateien können Sie Dateien durchsuchen, aber keine Dateien übertragen

Graben in Details

android08-8895456-2

Wer ist Houdini?

  • ARM zu x86 native Bridge von Intel.
  • Nicht viele offizielle öffentliche Informationen.
  • Wird auch in Intel Chromebooks und Desktop-Emulatoren wie BlueStacks und NOX verwendet.
  • Liest ARM-Opcodes und erzeugt entsprechendes Verhalten in x86.
  • Die Linux-Kernel-Funktion binfmt_misc (Miscellaneous Binary Format) übergibt ARM an Houdini.
  • Zugehörige Dateien auf 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

Seite lädt

  • Verbinden: adb verbinden<ip>
  • Verbindung prüfen: adb devices
  • Installieren Sie: adb install -r –no-streaming<apk-Datei>
  • Deinstallieren: adb shell pm uninstall -kcom.embarcadero.Projektname
  • App ausführen: adb shell am start -ncom.embarcadero.Projektname/com.embarcadero.firemonkey.FMXNativeActivity
  • App beenden/stoppen: ADB-Shell am force-stop com.embarcadero.ProjectName
  • Offene Shell: adb -d Shell
  • Push-Datei: adb push <lokaler Dateiname> /storage/emulated/0/Download
  • Pull-Datei: adb pull /storage/emulated/0/Download <lokaler Dateiname>

Targeting von Delphi & RAD Studio IDE

android09-8753876-2
  • Ein einzelnes FMX-Projekt kann bereits auf Windows oder Android abzielen.
  • WSA befindet sich in der Vorschau und wird noch nicht vollständig von Delphi unterstützt, aber das wird uns nicht aufhalten….
  • Verbinden Sie sich mit ADB und dann wird es in der IDE angezeigt.
  • FireMonkey-Apps werden entweder nicht ausgeführt oder melden den Fehler „Ihr Android-Gerät unterstützt die ausgewählte Plattformarchitektur nicht.“
  • Seite lädt!
    • Für Android 64 kompilieren
    • adb install -r –no-streaming FireMonkeyApp.apk
    • Machen Sie auch in der Größe veränderbar

Ändern der Größe Ihrer Android-App

android10-4036795-2
  • Bearbeiten Sie AndroidManifest.Template.xml

<Anwendung android:resizeableActivity=„wahr“>

  • Beachten Sie, dass mehrere Android-Apps im selben Ordner dieselbe AndroidManifest.Template.xml gemeinsam nutzen
  • Ermöglicht der FMX-Android-App, die Größe wie erwartet zu ändern.

Automatisierung des Handbuchs

android11-2170348-2

Mobile Snippets-Tests

android13-1010219-2
android12-7163568-2
  • Der Standort muss in Windows aktiviert sein, um in WSA zu funktionieren
  • Die Benachrichtigung erscheint auf dem Desktop und kann WSA aktivieren

Mehr Informationen

Nächste Schritte


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

Über den Autor

Chief Developer Advocate für Embarcadero Technologies.

Kommentieren

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

IN THE ARTICLES