Mobile Softwareentwicklung: Kotlin UI-Framework wird Multiplattform-fähig
JetBrains weitet mit der Version 1.5.0 die UnterstĂĽtzung fĂĽr das Kotlin UI-Framework Compose Multiplatform auch auf Desktop-, iOS- und Web-Anwendungen aus.
- Frank-Michael Schlede
Während Google Jetpack Compose konsequent für Android-Systeme weiterentwickelt, bietet JetBrains jetzt mit Compose Multiplatform 1.5.0 das Kotlin-UI-Framework auch für andere Systeme und Oberflächen wie Desktop, iOS und das Web an. Zu den Neuerungen zählen dabei unter anderem die Stabilisierung des UI-Testing-Frameworks auf Desktop-Systemen sowie die Verbesserung des Ressourcenmanagements und der Textfelder unter iOS.
Einsatz auf mehreren Plattformen als Ziel
Nachdem Google bereits Anfang August die Version 1.5 von JetPack Compose vorgestellt hat, zieht das Entwicklerteam bei JetBrains nun mit der Version Compose Multiplatform 1.5.0 nach. In einem sehr detaillierten Blog-Beitrag erläutern das Team, es das deklarative UI-Framework für Kotlin über Android hinaus für den Einsatz mit Desktop-Anwendungen sowie für iOS- und Web-Anwendungen erweitert hat. Die Unterstützung für iOS befindet sich derzeit noch im Alpha-Stadium, und der Einsatz für Web-Anwendungen gilt als experimentell. Für den Desktop soll die Entwicklung von Oberflächen mit Compose Multiplatform bereits unter Windows, macOS und Linux möglich sein.
Dialoge und Pop-ups direkt im Framework
Ab Version 1.5 sind nun Dialoge und Pop-ups direkt im Framework verfĂĽgbar. Nach der Beschreibung der Entwickler und Entwicklerinnen von JetBrains kommen Dialoge dabei fĂĽr modale Ereignisse zum Einsatz, bei denen Benutzer eine Auswahl treffen oder Daten eingeben. Die Pop-ups sind fĂĽr nicht modales Verhalten gedacht, wie beispielsweise fĂĽr das Anbieten optionaler Funktionen.
Die Basistypen Dialog
und Pop-up
sowie DropdownMenu
und AlertDialog
sind über allgemeinen Code zugänglich, wodurch es für Programmierer und Programmiererinnen nicht mehr notwendig ist, entsprechende plattformspezifische Funktionalitäten bereitstellen zu müssen.
Eine weitere neue Funktion ist die WindowInsets-API. Sie beschreibt, wie viel Anpassung erforderlich ist, um zu verhindern, dass die von den Entwicklerinnen und Entwicklern geschriebenen Inhalte mit der System-UI überlappen. Ab Version 1.5 ist diese Funktionalität in Compose Multiplatform enthalten, sodass Programmierer sie sowohl auf Android als auch auf iOS verwenden können.
Verbesserungen auf iOS
Die iOS-Plattform stand nach der Beschreibung im Blog-Beitrag im Mittelpunkt dieser Version. Dabei hat das JetBrains-Team nicht nur den Bildlauf an das Erscheinungsbild der Plattform angepasst, sondern auch die Ressourcenverwaltung vereinfacht und die Textverarbeitung verbessert. Dabei haben sie den Bildlauf von iOS so angepasst, dass er den nativen Bildlauf auf der iOS-Oberfläche imitiert.
In früheren Versionen wurde nur eine maximale Bildrate von 60 FPS unterstützt. Das konnte dazu führen, dass die Bedienoberfläche auf Geräten mit 120-Hz-Bildschirmen langsam und verzögert dargestellt wurde. Ab Version 1.5 werden nun Bildraten bis zu 120 FPS unterstützt.
Stabilisiertes Test-Framework fĂĽr den Desktop
Diese Version stabilisiert die Unterstützung für das Testen von Compose für den Desktop: Jetpack Compose bietet, eine Reihe von Test-APIs, um das Verhalten des Compose-Codes zu überprüfen. Die APIs wurden auf den Desktop portiert und waren in früheren Versionen nur mit Einschränkungen verfügbar. Sie wurden jetzt beseitigt, wodurch Entwicklerinnen und Entwickler nun umfassende UI-Tests für ihre Anwendung schreiben können.
Weitere, sehr ausführliche Informationen zu allen Änderungen und Verbesserungen stellt der Blog-Eintrag von JetBrains bereit. Wer die Software selbst testen möchte, findet weitere Informationen und den Source-Code dazu auf GitHub.
(fms)