- Ein Framework, mit dem sich native Android-Apps ausschließlich mit Swift entwickeln lassen; von der UI über das Manifest bis zum Lifecycle ist alles in einer einzigen Sprache aufgebaut
- Bietet eine Struktur, um Android-UIs deklarativ zu erstellen, ganz ohne XML, Java oder Kotlin
- Funktioniert als reines natives Android-Framework, nicht als Web-Wrapper oder Transpiler
- Die UI kann mit einer an SwiftUI angelehnten deklarativen Syntax definiert werden, während die komplexe JNI-Schicht vollständig verborgen bleibt
- Bietet ein integriertes Entwicklungserlebnis, bei dem selbst Android-Manifest und Gradle-Konfigurationen direkt in Swift-Code definiert werden
- Eine neue native Alternative für Swift-Entwickler, die auf Android erweitern wollen, und ein Wendepunkt mit neuen Möglichkeiten für plattformübergreifende Entwicklung auf Swift-Basis
Überblick über Droid
- Droid ist ein Framework, das dafür entwickelt wurde, native Android-Anwendungen allein mit der Sprache Swift zu entwickeln
- UI, App-Konfiguration, Lifecycle und Manifest werden in einer Sprache und einer Codebasis verwaltet
- Die bei der Android-Entwicklung bislang als unverzichtbar geltenden Abhängigkeiten von XML, Java und Kotlin entfallen
- Enthält native Android-Komponenten wie AndroidX, Flexbox und Material Design
- Bietet eine deklarative Syntax ähnlich wie SwiftUI und vereinfacht damit die Definition von UIs
- Verbirgt die JNI-Schicht vollständig und ermöglicht den Zugriff über eine High-Level-API
Designziele und Merkmale
- Auf Basis von Pure Swift werden UI, Manifest und die gesamte App-Konfiguration in Swift geschrieben
- Verwendet eine deklarative UI, bei der Lesbarkeit und Kombinierbarkeit im Vordergrund stehen
- Verfolgt einen No XML-Entwicklungsansatz ganz ohne XML
- Setzt auf ein natives Android-Ausführungsmodell statt auf webbasierte Ansätze oder Code-Transformation
- Bietet eine integrierte Struktur, in der UI, Manifest und Gradle-Abhängigkeiten an einer Stelle definiert werden
Aufbau einer deklarativen UI
- Android-UIs werden deklarativ mit einer Swift-freundlichen API aufgebaut
- Android-Widgets wie ConstraintLayout, VStack, TextView und MaterialButton werden in Swift-Code ausgedrückt
- Layout-Constraints, Klick-Events und Style-Einstellungen werden direkt im Code definiert
Android Manifest in Swift schreiben
- Das Android Manifest selbst wird als Swift-Code deklariert
- App-Symbol, Theme, Activity- und Fragment-Konfigurationen werden auf Code-Ebene verwaltet
- Lifecycle-Event-Verarbeitung und Konfigurationslogik werden in einer einzigen Swift-Datei integriert
Dokumentation und Entwicklungsumgebung
- Offizielle Dokumentation ist vorhanden und wird kontinuierlich erweitert
- Zwar ist noch nicht die gesamte Android-Funktionalität dokumentiert, vorhandene Leitfäden werden jedoch in aufbereiteter Form bereitgestellt
- Mit der Swift Stream IDE kann sofort mit der Entwicklung begonnen werden
Unterstützungsumfang
- Unterstützung für klassische Android-Widgets
- Unterstützung für AndroidX-Bibliotheken
- Unterstützung für Material-Design-Komponenten
- Unterstützung für Flexbox-Layouts
Projektstatus
- Das Projekt wird aktiv weiterentwickelt und entwickelt sich schnell weiter
- Die API wird mit Blick auf Erweiterbarkeit verbessert, während die Kernvision bestehen bleibt
- Feedback und Mitwirkung sind ausdrücklich erwünscht
Noch keine Kommentare.