Device Marketing Names - Dart / Flutter Update 0.6.0

Meine Device Marketing Names Library für Dart bzw. Flutter hat ein Update erhalten. Die Version 0.6.0 entfernt alte Methode, welche bereits als Deprecated markiert open_in_new waren und aktualisiert diverse Abhängigkeiten. Abseits davon gibt es kleinere Optimierungen und Refactorings.
Funktional sollte alles weiterhin so ablaufen wie zuvor und es sind keine Breaking Changes vorhanden, abseits der erwähnten entfernten veralteten Methoden. Entsprechend sollten von Entwicklerseite keine Änderungen am Code nötig sein. Weitere Informationen zur Library und natürlich auch der Download-Link sind in den Related Links zu finden. Bei Fragen meldet euch gerne direkt in den Kommentaren.
Related Links
Device Marketing Names - Kotlin im Maven Central Repository

Wie vor einigen Tagen angekündigt bin ich aufgrund von wiederkehrenden Problemen mit Jitpack zu Maven Central gewechselt. Dies beinhaltete Jira Accounts und Tickets, DNS Einträge, einige Änderungen am Code und das Verstehen diverser neuer Abläufe und Tools.
Dafür gibt es nun aber Device Marketing Names – Kotlin in der Version 0.4.0 via Maven Central. Ein weiterer schöner Nebeneffekt ist der neue Package Name, welcher nun de.boehrsi:devicemarketingnames
lautet. Alle neuen Version der Device Marketing Names – Kotlin Library werden in Zukunft via Maven Central verteilt. Einen Migration Guide für bestehende Nutzer gibt es via GitHub open_in_new.
Das eigentliche Deployment ist in Zukunft nicht wesentlich aufwendiger als zuvor, lediglich die initiale Einrichtung war durchaus komplex. In diesem Bereich half mir der Blog Beitrag von Stream.IO open_in_new sehr. Weitere Maven Central Projekte sollten ebenfalls einfacher von der Hand gehen, da ich zum einen den Ablauf nun kenne und zum anderen auch einige Dinge aus dem aktuellen Projekt wiederverwendet kann.
Related Links
Humble Mobile Development und Hacking Bundles

Den Großteil meines Wissens im Bezug auf Softwareentwicklung habe ich mir initial selber beigebracht. Wenn ihr ähnliches vorhabt oder aber euer Wissen im Bereich Softwareentwicklung vertiefen wollt, dann schaut euch doch mal die folgenden zwei Bundles an.
Das Humble Tech Book Bundle: iOS, Android, and Flutter: Mobile Development ist nur noch etwas mehr als zwei Tage lang verfügbar und bietet euch bis zu 19 Bücher und Videos zum Thema Mobile Development. Die erste der drei verfügbaren Stufen ist bereits ab 1 € freigeschaltet und alle Inhalte gibt es ab 18,16 €. Unter anderem bekommt ihr Managing State in Flutter Pragmatically, Swift Cookbook und Kickstart Modern Android Development with Jetpack and Kotlin. Eine sehr aktuelle Sammlung von Inhalten zum Thema Mobile Development, welche definitiv einen Blick Wert ist.
Falls ihr eher in Richtung IT Security oder Hacking gehen wollt, dann ist vielleicht das Humble Tech Book Bundle: Hacking by No Starch Press etwas für euch. Hier habt ihr noch entspannte 16 Tage Zeit das Bundle zu erwerben. Vier Stufen, mit einer Preisspanne von 1 € bis 29,07 €, gibt es. Insgesamt könnt ihr 18 Bücher erhalten und mit dabei sind z.B. The Practice of Network Security Monitoring, Cyberjutsu, Black Hat Python, 2nd Edition und Designing Secure Software. Ein sehr spannendes Thema, welches in einer immer digitaleren Welt gefühlt immer relevanter wird.
Alle weiteren Informationen und die Links zu den Bundles findet ihr wie gewohnt in den Related Links.
Related Links
GitHub - Dependabot & Dependency Graph Support für Dart

Ich nutze GitHub für quasi alle meine Open Source Projekte open_in_new und selbige sind gerne mal in Dart geschrieben. Für Dart fehlte bis dato leider Support für Dependabot und den Dependency Graph. Dies hat sich nun geändert und zusätzlich wurde auch die Advisory Database für Dart freigeschaltet.
Durch Dependabot open_in_new erhaltet ihr die Möglichkeit mit wenig Aufwand eure integrierten Abhängigkeiten automatisiert auf Aktualität und Sicherheit zu prüfen. Gleichzeitig gibt es mit der Advisory Database open_in_new eine große Sicherheitsdatenbank, die gemeinsam mit der Community gepflegt wird. In diesem Kontext können sicherheitsrelevante Fixes privat diskutiert und behoben werden, bevor sie mit der Allgemeinheit geteilt werden. Der Dependency Graph open_in_new gibt euch Informationen darüber welche Pakete ihr nutzt und wer wiederum eure Library verwendet. Durchaus hilfreich in verschiedenen Situationen.
Das Setup ist sehr einfach und kann im jeweiligen Security
Tab eines Projektes aktiviert werden. Ich habe selbiges für alle meine Dart Projekte mal direkt durchgeführt und auch schon die ersten Library Updates basierend auf den Hinweisen des Dependabot durchgeführt. Dies gestaltet sich extrem einfach, denn es werden direkt via Merge integrierbare Pull-Requests erstellt. Sofern ihr GitHub Projekte nutzt, egal ob in Dart oder einer anderen Sprache, werft doch mal einen Blick in den Security Tab, dort gibt es mitunter sehr praktische Funktionen.
Material Theme Builder - Material Design Themes erstellen

In der letzten Zeit habe ich häufiger über Material Design Version 3 berichtet. Sowohl mein Blog, wie auch die Tessa App nutzen Material Design und entsprechend auf die dortigen Farbkonzepte. Doch eine gute Farbzusammenstellung zu finden ist gar nicht so einfach. Deswegen freue ich mich sehr, dass es ein kleines Web-Tool direkt von Google gibt, wo man sich derartige Farbkonzepte erstellen und direkt mit Vorschau anzeigen lassen kann.
Der Material Theme Builder erstellt basierend auf eurer Farbauswahl ein dunkles und helles Theme und generiert eine Vorschau in einer Beispiel App. Letzteres ist vor allem hilfreich, um sich besser vorstellen zu können wie die Themes später wirken. Neben etwaigen dedizierten Design Tools und komplexer Software, ist dieses kleine Web-Tool für mich eine praktische und schnell nutzbare Alternative um Themes zu erstellen.
Related Links
Android Studio Dolphin - 2021.3.1

Seit ein paar Tagen ist Android Studio Dolphin (Version 2021.3.1) verfügbar. Das Update bringt einige sehr praktische Änderungen mit sich, welche mir tatsächlich das Daily Doing erleichtert haben. Allem voran ist hier die neue Darstellung der Logausgabe zu erwähnen. Logcat open_in_new ist nun strukturierter, kann besser gefiltert und formatiert werden und bietet dadurch einen besseren Zugriff auf die Logging Daten, welche vermutlich für die meisten Entwickler ziemlich wichtig sein dürften. Sogar mehrere Logcat Fenster gleichzeitig sind nun möglich und nach Neustarts oder App Abstürzen bleibt die Session erhalten und es erfolgt lediglich ein Eintrag, dass der Prozess beendet bzw. neu gestartet wurde.
Ebenfalls schön sind diverse Erweiterungen bezüglich des Compose open_in_new Supports. Dies bedeutet das die Vorschau für Composable Inhalte nun besser funktioniert und z.B. auch Animationen dynamisch dargestellt werden können. Ebenfalls neu in diesem Bereich sind Compose Multipreview Annotations und Recomposition Counts. Letzteres kann vor allem hilfreich sein, um unnötiges neu zeichnen der UI zu erkennen.
Tessa App Version 2.0 veröffentlicht

Heute gibt es eine weitere Update News, welche dieser Tage recht häufig sind. Der Release der Tessa App Version 2.0 erfolgte schon vor ca. zwei Wochen, sodass der Google Play Store die neue Version bereits ausliefern sollte.
Neben der App wurde auch die kleine Info-Webseite zur Tessa App open_in_new aktualisiert. Selbige findet ihr in den Related Links, ebenso wie alle weiteren Informationen zur App und natürlich auch den Download Link. Die wichtigsten Änderungen der neuen Major Version gibt es im Folgenden.
Related Links
Patchday - Device Marketing Names, Device Identifiers und OnUpgrade

Die folgenden Updates liegen bereits ein paar Tage zurück und entsprechend sollten die verschiedenen Plattformen, welche die Verteilung der eigentlichen Client Pakete übernehmen, auch schon entsprechend aktualisiert sein.
Innerhalb der letzten Woche erhielt meine OnUpgrade Flutter Library einen Wartungsrelease, welcher diverse Abhängigkeiten aktualisierte und kleinere Refactorings unter der Haube mit sich brachte. In Version 1.1.3 open_in_new sollte sich nichts an der Library selbst geändert haben, es wurde lediglich aufgeräumt und aktualisiert.
Auch mein Tool Device Identifiers, welches genutzt wird um Gerätenamen auszulesen und daraus nutzbaren Code zu erstellen, wurde aktualisiert. Version 0.4.1 open_in_new bringt dabei ebenfalls aktualisierte Abhängigkeiten mit sich. Ansonsten hat sich an dem Dart Tool nichts geändert.
Meine Device Marketing Names Client Libraries für Android und Flutter wurden ebenfalls mit neuen Daten und frischen Abhängigkeiten ausgestattet. In dieser Version (Android Version 0.3.0 open_in_new und Flutter Version 0.4.4 open_in_new) wurden unter anderem die neuen iPhones hinzugefügt. Abseits davon sollten auch hier keine Breaking Changes oder dergleichen auftreten. Das Android Update bringt außerdem aktualisierte SDK Anforderungen mit sich, denn compileSdk
und targetSdk
setzen nun auf die aktuellste Version 33. Auch Gradle wurde im Rahmen des Updates aktualisiert.
Related Links
Tessa App 2.0 - Full Test abgeschlossen & Release Vorbereitung gestartet

Bei den Status Updates zu meinen aktuellen Projekten geht es heute weiter mit der Tessa App, welche die Full Test Phase für den Release von Version 2.0 überstanden hat. Aufgrund von diversen umfangreichen Änderungen in diesem Release gab es doch noch die eine oder andere Kleinigkeit die noch behoben werden musste. Alles in allem gingen die letzten Anpassungen aber gut von der Hand und die letzten bekannten Fehler wurden aus der Welt geschafft. Zusätzlich gab es durch den Release von Flutter 3.3 noch einige Last Minute Änderungen. Der verbesserte Material 3 Support im genannten Release erlaubte mir einige Workarounds zu entfernen.
Aktuell bereite ich den Release vor und passe die nötigen Store-Assets, sowie die Release Notes an. Diese Prozess dauert bei umfangreichen Releases meist länger als man es sich wünscht. Ich plane den Release innerhalb von dieser Woche, aber bis spätestens Ende nächster Woche durchzuführen.
Außerdem spiele ich im Rahmen der App gerade mit dem Gedanken automatisierte UI Tests durchzuführen. In diesem Bereich bin ich über neues und scheinbar sehr einfach nutzbares Tooling gestolpert. Sobald ich dazu gekommen bin mir das Ganze anzuschauen wird es sicherlich auch dazu einen oder mehrere Beiträge geben.
Related Links
Device Marketing Names & Device Identifiers Status Update

Nach ein paar ruhigen Tagen geht es nun wieder aktiver zur Sache hier im Blog. In den letzten Wochen vor meinem Urlaub habe ich mich relativ umfangreich um diverse meiner Projekte gekümmert. Im Folgenden gibt es ein kleines Update zum Status von selbigen.
Den Anfang machen Device Marketing Names (Kotlin Package & Dart / Flutter Package) & Device Identifiers, meine Projekte zum Thema Gerätenamen auslesen. Diese erhielten vor ca. drei Wochen ihre regelmäßigen Updates und wurden mit neuen Daten und minimalen Anpassungen versehen. Die Updates wurden wie gewohnt über die bekannten Package Repositories verteilt und der Code ist auf GitHub verfügbar. Die nächste Aktualisierungsrunde wird bereits in ca. einer Woche stattfinden. Alles weitere zu diesen Projekten gibt es im Projekte Bereich.
Sowohl das Tool zum generieren, wie auch die Kotlin und Flutter Library, welche die Funktionalität für Clients zur Verfügung stellen, sind mittlerweile als stabil anzusehen. Kleinere Änderungen, Erweiterungen und natürlich Updates der Daten gibt es entsprechend, aber umfangreichere Anpassungen an der API sollte es keine mehr geben. Den Prozess des monatlichen Datenupdates konnte ich darüber hinaus auch noch etwas beschleunigen, sodass diese Projekte gut gepflegt werden können, ohne zu viel Zeit zu benötigen. Dies ist mir aktuell sehr wichtig, denn ich möchte laufenden Projekte gut pflegen, aber ebenso auch Zeit haben neue und umfangreiche Projekte zu starten.
In den nächsten Tagen werden weitere Informationen zum Status meiner Projekte erscheinen, denn aktuell möchte ich für euch und auch für mich selbst einen roten Faden in die Entwicklung von selbigen bringen. Dies plane ich schon seit längerem, denn ich möchte alle meine öffentlich verfügbaren Projekte mit nachvollziehbaren Entwicklungszyklen ausstatten. Dies erlaubt mir hoffentlich laufende, wie auch neue Projekte, gut zu pflegen und am Leben zu halten.