Flutter 2.2 mit neuen Funktionen auf der Google I/O 2021 angekündigt

Google angekündigt Flattern 2.2 (eine neueste Version ihres plattformübergreifenden App-Entwicklungs-Frameworks) im Google I/O-Event. Und es bietet aufregende Verbesserungen wie verzögerte Android-Komponenten, iOS-Leistungsverbesserungen, standardmäßige Nullsicherheit, Verbesserungen an Desktop- und Entwicklungstools und vieles mehr.

Es gibt viel zu wissen über die neuesten Updates von Flutter. Werfen wir also einen tiefen Blick auf Flutter 2.2 mit all den neu hinzugefügten Funktionen.

Dart 2.13

Dart 2.13

Flutter 2.2 wartet mit einer Reihe von Verbesserungen auf und Dart 2.13. Es enthält die am zweithäufigsten nachgefragten Feature-Typ-Aliasnamen, Dart FFI, Updates zum Nullsicherheitsfeature usw.

Alias ​​eingeben

Sie können für jeden vorhandenen Typ einen neuen Namen erstellen und dann kann dieser Name anstelle eines vorhandenen Typs verwendet werden. Bevor Dart 2.13-Benutzer einen Typ-Alias ​​für die Funktion erstellen können, wurde sie jetzt auf den Variablentyp erweitert.

Beispiel:

typedef  Length = double;

fina Length x = 4;

Das Beste am Typalias ist, dass er auch den Typgleichheitstest besteht. Und es ist legal, den Konstruktor für einen Typalias aufzurufen, der eine Klasse benennt.

Beispiel:

Void main() {
   debugPrint(double == Length); // True
}

Der Vorteil der Verwendung eines Typalias besteht darin, dass Sie Ihren Code leichter für andere lesen können.

Dart FFI (Foreign Function Interface)

FFI ist ein Mechanismus zum Aufrufen von C-Code. Und FFI hat eine neue Funktion, mit der der Benutzer das Inline-Array direkt in Dart einpacken kann.

Beispiel:

class StructInlineArray extends Struct {
   @Array(8)
   external Array<Unit8> arr;
}

Anstatt von

struct MyStruct {
   Unit8_t arr[8];
}

Eine weitere Verbesserung in FFI wird jetzt unterstützt gepackte Strukturen. Dies trägt dazu bei, Padding zu vermeiden, um den Gesamtspeicherverbrauch zu senken.

Beispiel:

@Packed(4)
class TASKDIALOGCONFIG extends Struct {
  @Uint32()
  external int cbSize;
  @IntPtr()
  external int hwndParent;
  @IntPtr()
  external int hInstance;
  @Uint32()
  external int dwFlags;
}

Dart 2.13 enthält auch andere Änderungen in Bezug auf die Leistungsverbesserung und die Reduzierung des vom Programm belegten Speicherplatzes.

Null Sicherheitsupdate

Wenn Sie nun ein Projekt mit Flutter 2.2 erstellen, wird standardmäßig ein Projekt mit Nullsicherheit generiert. Die meisten Plugins sind auf die Nullsicherheit abgeschwächt. Es ist sicher, die Flutter-App auf Nullsicherheit zu migrieren.

Flutter Desktop-Updates

Benutzerdefinierte Textaktionen

Flutter hat seine Unterstützung auf eine Reihe von Plattformen mit unterschiedlichen Eingabearten (Touch, Maus+Tastatur) ausgeweitet. In dieser Version können Benutzer die mit den Textaktionen verbundenen Tastenanschläge vollständig anpassen.

Diese Funktion eröffnet den Flutter-App-Entwicklern endlose Möglichkeiten. Zum Beispiel ermöglicht es Benutzern, eine Nachricht mit dem ENTER Drücken Sie die Taste, während Sie weiterhin das Einfügen einer neuen Zeile über Strg + EINGABE zulassen.

Automatisches Scroll-Verhalten

In dieser Version wird die Bildlaufleiste automatisch hinzugefügt, wenn der Inhalt die Bildschirmhöhe überschreitet. Vor dieser Version auf Android und iOS wurde keine Bildlaufleiste automatisch hinzugefügt, die Entwickler müssen sie manuell hinzufügen.

Mit diesem Update führte Flatter Anpassungen für die Benutzeroberfläche der Bildlaufleiste ein. Verwenden von ScrollBarTheme Sie können es App-weit und für einen bestimmten Bildschirm ändern ScrollBehavior.

Mauszeiger über Textspannen

Wie wir wissen, ist TextSpan kein Widget und wir können den Mauszeiger ändern, wenn wir über ein anklickbares Widget fahren, außer widget TextSpan. Jetzt ist es mit Flutter 2.2 Vergangenheit, wenn Sie verwenden TestSpan mit Gestendetektor Der Benutzer erhält den entsprechenden Mauszeiger. Es unterstützt auch onEnter und onExit Veranstaltungen.

Zahlungen und Monetarisierung

Flutter 2.2 enthält ein neues Plugin zum Hinzufügen von Google Pay auf Android und iOS und ein neues Anzeigenformat über das Google Mobile Ads SDK.

Mit dem Beamten Bezahl-Plugin vom Google-Entwicklerteam wird der Bezahlvorgang auf beiden Plattformen einfach zu implementieren. Es ist einfacher als je zuvor, die App durch In-App-Käufe, Zahlungen und Anzeigen zu monetarisieren.

Unterstützt verzögerte Komponente für Android

Die verzögerten Komponenten sind für den Android-Entwickler nicht neu, aber jetzt offiziell in Flutter 2.2 eingeführt. Aber das Traurige ist, dass es derzeit nur auf Android beschränkt ist und für iOS noch nicht unterstützt wird.

Für diejenigen, die es nicht wissen, was ist eine verzögerte Komponente? Die verzögerte Komponente ist der Code, der zur OnDemand-Laufzeit heruntergeladen werden kann. Für weitere Details besuchen Sie die offizielle Seite für die aufgeschobene Komponenten.

Das behobene First-Jank-Problem für iOS

Wenn Sie beim ersten Ausführen der App bemerkt haben, dass sie ruckartig zu sein scheint. Nach einem anschließenden Start fühlt es sich normal an. Es liegt an der Shader-Kompilierung. Einfach ausgedrückt; Der Shader ist ein Stück Code, das auf dem Gerät kompiliert werden muss.

Um dieses Problem zu beheben, besuchen Sie diese Seite es hat alle Details. Es ist nicht vollständig gelöst, aber das Entwicklerteam hat versucht, es bis zu einem gewissen Grad zu lösen.

Windows UWP-Apps

Universelle Windows-Plattform-Apps sind jetzt im Entwicklungskanal auf Alpha verschoben. UWP-Apps können auf einer Vielzahl von Geräten ausgeführt werden, auf denen Standard-Windows-Apps nicht ausgeführt werden, einschließlich Xbox. Um die UWP-Unterstützung im Projekt zu aktivieren, müssen Sie in den Dev-Kanal wechseln und die Voraussetzungen einrichten. Für weitere Details zur Einrichtung können Sie die offizielle besuchen Webseite.

Entwicklungstools

Das Entwicklungstool ist als Endprodukt wichtig, das Entwicklern hilft, speichereffizientere und fehlerfreiere Apps zu erstellen, und das Flutter-Team weiß es sehr gut. In diesem Zusammenhang haben sie in dieser Version zwei neue Verbesserungen bei der Speicherverfolgung und eine ganz neue Registerkarte für das ‘Provider’-Plugin eingeführt.

Die Verbesserung der Speicherverfolgung gibt dem Entwickler die Möglichkeit, nachzuverfolgen, wo Objekte zugewiesen wurden. Es ist wirklich hilfreich, ein Speicherleck im Code zu finden. Ein weiteres charmantes Feature des Entwicklungstools ist, dass ein Entwickler benutzerdefinierte Nachrichten in die Speicherzeitleiste einfügen kann. Mit dieser Funktion kann der Entwickler überprüfen, ob er die Dinge richtig aufräumt oder nicht.

Manchmal müssen Sie im Paket nach Dev-Tools suchen, die Sie abgedeckt haben. Im Dev-Tool wurde ein neuer zusätzlicher Tab hinzugefügt, der den provider Paket. Sie sehen automatisch einen neuen Anbieter-Tab, wenn Sie das Anbieterpaket mit der neuesten Flatter-Version verwenden.

Flutter Web-Updates

Mit dieser Version hat flatter viele Verbesserungen für die Webplattform eingeführt. Eine der Hauptverbesserungen besteht darin, dass das doppelte Herunterladen von main.dart.js behoben wurde, bevor der Servicemitarbeiter das Update herunterlädt, und um diese Änderungen zu sehen, muss der Benutzer die Seite einige Male aktualisieren.

Bei einem neuen Dienst müssen Benutzer jedoch nur warten, bis ein Update heruntergeladen wird, nachdem dieser Benutzer Änderungen erhält, ohne die Seite manuell zu aktualisieren.

Auch hier ist die Barrierefreiheit eine nützliche Sache, die verbessert wird. Das Flutter-Team hat die Position der semantischen Knoten verbessert, um die Lücke zwischen mobilen und Desktop-Webanwendungen bei der Verwendung von Transformationen zu schließen. Das bedeutet, dass das Fokusfeld korrekt über Elementen angezeigt werden sollte, wenn Widgets mit Transformationen gestaltet werden.

Und zuletzt unterstützt Flutter DevTools jetzt den Layout-Explorer für Flutter Web Apps.

Einpacken

Dart 2.13 mit allen aktualisierten Funktionen ist jetzt verfügbar. Es ist Open Source und kostenlos erhältlich. Ich freue mich über Ihr Feedback zu den neuen Funktionen und Änderungen im Kommentarbereich.

Similar Posts

Leave a Reply