Cross-Plattform: Flutter 2.10 ist reif für Windows
Das Framework und die zeitgleich aktualisierte Programmiersprache Dart 2.16 liefern produktionsreife Apps für Windows.
Google hat frische Updates des Cross-Plattform-Frameworks Flutter und der Programmiersprache Dart wie üblich zur gleichen Zeit vorgelegt. Flutter 2.10 – unterstützt durch Dart 2.16 – vollzieht den finalen Schritt auf die Desktop-Plattform Windows und erlaubt Entwicklerinnen und Entwicklern ab sofort das Bereitstellen produktionsreifer Anwendungen auf dem Microsoft-Betriebssystem.
Erst Windows, dann macOS und Linux
Neben den Zielplattformen Android, iOS und dem Web ist der in Flutter 2.10 als stabil eingestufte Support für Windows der erste Meilenstein zur nativen Anpassung an Desktop-Betriebssysteme – macOS und Linux sollen in den nächsten Monaten folgen. Ansonsten liefert das neue Flutter-Release Performance-Verbesserungen, Fehlerbereinigungen sowie weitere neue Funktionen. Es markiert zudem den Auftakt zur Migration auf Material 3, mit dem sich unter anderem komplette ColorSchemes ausgehend von einer einzigen Farbe erstellen lassen.
Zu den neuen Funktionen in Flutter 2.10 zählen Compressed Pointers, die bereits mit Dart 2.15 eingeführt wurden und nun auch bei Apps für iOS-64-Bit-Systeme zu einem geringeren Speicherbedarf beitragen sollen. Build-Fehler bei Android-Apps, die an die 64K-Grenze für Methoden stoßen, die also mehr als 65536 Methoden referenzieren, sollen durch Multidex-Support verhindert werden. Während Flutter beim Bauen einer App standardmäßig auf die neueste Android-Version zielt – derzeit Version 12 (API level 31) –, lassen sich beim Überschreiten des Methoden-Limits mithilfe des --multidex
-Flags über flutter build appbundle
oder flutter build apk
auch API Level 21 und darunter anpeilen.
Dart 2.16 steuert auf einheitliche Tools zu
Das neue Release der Programmiersprache Dart wartet zwar nicht mit neuen Funktionen auf, das Entwicklerteam setzt aber die Migration von den älteren CLI-Werkzeugen hin zu einem einheitlichen dart
-Tool-Set fort. Mit Erscheinen von Dart 2.16 gelten dartdoc
und dartanalyzer
als veraltetet (deprecated) und sollen voraussichtlich im nächsten Release vollständig wegfallen. Abgelöst werden die beiden durch die neuen Tools dart doc
und dart analyze
.
Obwohl das Duo aus Flutter und Dart grundsätzlich darauf ausgelegt ist, Apps stets für so viele Plattformen wie möglich auszurüsten, gibt es Ausnahmefälle, in denen Entwicklerinnen und Entwickler die Zielplattformen für ihre App bewusst einschränken wollen. Grund dafür kann eine spezielle API sein, die lediglich auf einzelnen Betriebssystemen zur Verfügung steht oder auch die Library dart:ffi
, die sich nicht im Web nutzen lässt. Mit Dart 2.16 lassen sich daher nun konkrete Zielplattformen über den platforms
-Tag in den pubspec eines Package festlegen. Das folgende Listing zeigt beispielhaft eine pubspec.yaml-Datei, die allein Windows und macOS für eine App festschreibt.
name: mypackage
version: 1.0.0
platforms:
windows:
macos:
dependencies:
Einen vollständigen Überblick aller Änderungen sowie weitere Details zu den neuen Versionen finden sich in den jeweiligen Blogeinträgen des Cross-Plattform-Frameworks Flutter und der Programmiersprache Dart.
(map)