Boehrsi.de - IT und Gaming Blog

OnUpgrade - Mein erstes Dart / Flutter Package

Erstellt am event Uhr von account_circle Boehrsi in label Development
OnUpgrade - Mein erstes Dart / Flutter Package Bild

Während es für fast alles ein Plugin / Package gibt im Dart / Flutter Kontext, existieren natürlich trotzdem die kleinen Ausnahmen die einem fehlen. Für diese Dinge schreibt man dann selber Code, verwendet ihn in der nächsten App wieder und entscheidet sich dann vielleicht eine Library daraus zu machen.
Selbiges tat ich vor kurzem und in diesem Zuge habe ich mein erstes Dart / Flutter Package veröffentlicht. OnUpgrade open_in_new soll dem Entwickler helfen eventuell nötige Migrationen bei App-Upgrades durchzuführen oder den Nutzer über neue Funktionen zu informieren. Das Package stellt dabei die Logik zum Speichern, Vergleichen und Auswerten der zuletzt installierten und aktuell genutzten App-Version zur Verfügung. Was im Falle eines Updates ausgeführt wird, wie ein eventueller Dialog aussieht oder wie der generelle weitere Ablauf ist, entscheidet der Entwickler.

Das Package ist ein Werkzeug, welches dem Entwickler die Flexibilität lässt seinen eigenen Code zu nutzen, während es das Vergleichen und Verwalten der Versionen übernimmt. Ebenfalls in den Kontext Flexibilität fällt die Möglichkeit die Standardimplementierung für das Auslesen und Setzen der Versionen zu überschreiben. Denn während das Package einen fertigen Weg zum Speichern der letzten Versionsnummer mitbringt, hat mancher selbige vielleicht schon an anderer Stelle abgelegt. Das letzte Update des Packages fügt außerdem noch einen kleinen Helper hinzu, welcher mit Versionsnummern und auszuführenden Methoden gefüttert wird und die korrekte Ausführung eventueller Upgrades übernimmt.

Ich habe dieses Package geschrieben, da ich keine exakte oder passende Umsetzung dieser Logik auf pub.dev open_in_new finden konnte. Da ich ein Freund von Open Source Software bin, habe ich das Package auf GitHub hinterlegt, wo es auch zentral entwickelt wird und natürlich wurde es auch auf pub.dev veröffentlicht.
Neben einer hoffentlich aussagekräftigen Dokumentation open_in_new, bin ich aktuell bei 100% Code Coverage open_in_new im Bereich der Unit Tests. Ich plane das Package je nach Interesse und Ideen um Features zu erweitern, zum jetzigen Zeitpunkt ist es aber bereits als stabile Version 1.1 für jedermann verfügbar. Falls ihr das Package in die Finger bekommt freue ich mich über jegliches Feedback. Weitere Informationen gibt es hier im Blog im Projekte Bereich und auf GitHub. Alle wichtigen Links findet ihr wie gewohnt in den Related Links.

Related Links
Kommentare  
Kommentar erstellen
Mit dem Abschicken des Kommentars erklären sie sich mit der in der Datenschutzerklärung dargelegten Datenerhebung für Kommentare einverstanden. Spam, unangebrachte Werbung und andere unerwünschte Inhalte werden entfernt. Das Abonnieren via E-Mail ist nur für E-Mail Adressen erlaubt die Sie rechtmäßig administrieren. Widerrechtliche Abonnements werden entfernt.