Dart - Linux Binaries unter Windows erstellen
Im Rahmen meines BoehrsiTweetHub Projekts stolperte ich über das Problem, dass unter Windows gebaute Dart Binaries nicht unter Linux ausgeführt werden können. Diese Problematik ist auch auf GitHub als Issue open_in_new festgehalten und ich finde es spannend das ich darüber nicht schon viel früher gestolpert bin. Doch glücklicherweise war es trotz dessen durchaus einfach die gewünschte Binary zu erzeugen. Einen kleinen Guide findet ihr im unteren Teil der News. Sofern ihr Fragen, Ergänzungen oder ähnliches habt, meldet euch gerne in den Kommentaren.
BoehrsiTweetHub - RSS und GitHub Updates automatisch auf Twitter teilen
Ende des letzten Monats erhielt ich die Information das IFTTT open_in_new leider die Twitter Integration für kostenlose Accounts deaktiviert. Ein Grund dafür dürfte sicherlich sein das die Twitter API selbst nun kostenpflichtig ist, sobald eine größere Anzahl an Requests benötigt wird. Was auch immer der konkrete Hintergrund dieser Entscheidung ist, für mich war klar das ein kostenpflichtiger Account nicht in Frage kommt. Denn auch wenn ich meine Blog Beiträge gerne via Twitter weiterleite, so ist meine Reichweite dort durchaus beschränkt und dafür Geld zu bezahlen würde sich einfach nicht lohnen.
Allerdings bin ich nun mal Softwareentwickler, habe einen Server und falls mal etwas nicht funktioniert überlege ich natürlich selber eine Lösung zu entwickeln. Schnell gedacht und tatsächlich auch schnell gemacht, denn am letzten Wochenende implementierte ich meine eigene Twitter Posting Lösung. Selbige unterstützt neben konfigurierbaren RSS Feeds nun auch GitHub Releases.
Raffle Companion - Erster Release
Bereits Ende letzten Jahres wollte ich mein kleines Gewinnspiel Tool Raffle Companion für die Allgemeinheit verfügbar machen, doch wir wissen ja alles wie gut Pläne manchmal funktionieren. Nun hat es aber endlich geklappt und meine erste Windows App ist im Microsoft Store verfügbar open_in_new. Warum im Microsoft Store kann man nun fragen. Die Antwort ist relativ einfach, denn auf diesem Weg erhalte ich eine sichere, signierte und installierbare Version meines Tools, ohne umfangreiche jährliche Kosten für Zertifikate. Außerdem ist es einfach die App zu installieren und zu verwalten. Ich werde für die nächsten Releases prüfen ob ich zusätzlich ein simples ZIP Archiv anbieten kann, welches dann z.B. via GitHub verfügbar ist.
Patchday - Device Marketing Names aktualisiert
Es ist mal wieder Zeit für neue Versionen meiner Device Marketing Names Libraries für Android und Flutter. Die heute neu erschienenen Versionen (Dart / Flutter Version 0.6.5 open_in_new und Kotlin Version 0.4.4 open_in_new) bringen eine frische Gerätedatenbank, Aktualisierungen der Abhängigkeiten und kleinere Anpassungen mit sich. Die Gerätedatenbank stammt wie immer von meinem Device Identifiers Tool, welches ebenfalls vor kurzem aktualisiert wurde. Es hat im Rahmen des 0.5.0 Releases einige Build Optimierungen und Aktualisierungen von Abhängigkeiten erhalten.
Die Installation der jeweiligen Updates sollte unkritisch sein und unkompliziert von statten gehen. Wer sich genauer informieren will, kann dies wie immer direkt in den jeweiligen GitHub Repositories tun. Folgt dafür einfach wie gewohnt den Related Links. Falls es Fragen gibt können selbige gerne direkt hier in den Kommentaren gestellt werden.
Modern Android Development
Die Art und Weise wie man Android Apps entwickelt hat sich in den letzten Jahren durchaus verändert. Es gibt eine große Anzahl an alten APIs und Konzepten, welche sich über die Jahre weiterentwickelt haben und entsprechend muss Google sowohl den Support der alten Geräte, aber auch die Weiterentwicklung der Plattform selbst balancieren. Hier wurde in den letzten Jahren vieles grundlegend neu gestaltet, z.B. mit den Jetpack / AndroidX open_in_new Bibliotheken, die die alten Support Libraries ersetzen oder auch mit Kotlin open_in_new statt Java als Hauptsprache und natürlich auch mit Compose open_in_new als frisches UI Framework.
Meiner Meinung nach wurde hier sehr viel sehr richtig gemacht und das ohne das Nutzer alter Geräte permanent auf der Strecke bleiben. Doch nun stellt sich die Frage, ob man bei derart vielen Neuerungen es schafft am Ball zu bleiben. Damit diese Frage mit ja beantwortet werden kann gibt es die Modern Android Development Webseite von Google. Hier findet ihr einen Überblick zu allem was neu ist, allem was als Best Practice angesehen werden kann und generell allem was modern und interessant ist. Sofern ihr also im Kontext der Android Entwicklung unterwegs seid, schaut doch mal dort vorbei. Den Link und entsprechend alle weiteren Informationen gibt es in den Related Links.
Devlog #2 - Project Space - Initiales Tooling
Heute geht es weiter mit meinem zweiten Game Devlog. Dieses Mal geht es um meine ersten Versuche Dinge umzusetzen und auszuprobieren. Dabei liegt der Fokus vor allem auf meinem initial genutzen Tooling. In der ersten Jahreshälfte 2022 erstellte ich Mockups und versuchte meine vage Idee zu konkretisieren. Dabei arbeitete ich viel analog, einfach auf Papier. Grund dafür war vor allem die Flexibilität ohne Tooling schnell Kleinigkeiten zu visualisieren. Später wechselte ich auf mein gutes altes Rocket Book open_in_new, denn hier habe ich die Freiheit analog zeichnen und schreiben zu können, kann aber gleichzeitig alles schnell und einfach digitalisieren.
Android Developer Survey 2023
Als Android Entwickler ist mir die Android Platform natürlich wichtig, denn sie ist die Basis für meine Entwicklungen und das sowohl für meine privaten, wie auch für meine beruflichen Projekte. Entsprechend bin ich der Meinung man sollte jede mögliche Art des Feedbacks nutzen, um eine positive Entwicklung der Platform zu unterstützen. Selbiges ist gerade mal wieder möglich, denn im Rahmen des Android Developer Survey 2023 geht es mal wieder darum Feedback zu sammeln, Schwerpunkte festzulegen und die generelle Stimmung zu erfassen. Sofern ihr euch in der Android Entwickler Welt bewegt, ist es vielleicht keine schlechte Idee die 10 bis 15 Minuten zu investieren. Ich habe selbiges bereits getan.
Android Studio Flamingo
Seit kurzem gibt es eine neue Android Studio Version, welche durchaus interessante neue Funktionen bietet. Android Studio Flamingo bringt diverse Hilfen für die Entwicklung mit den neuen dynamischen Farben im Android System mit sich, dies gilt sowohl für die eigentliche UI, wie auch für Icons.
Mit der Device Mirroring Funktion könnt ihr euer physikalisches Gerät direkt in Android Studio spiegeln, wie man es vom Emulator kennt. Auch Interaktionen mit dem Gerät sind möglich, was ein schnelles Arbeiten und Testen mit echten Smartphones oder Tablets ermöglicht, ohne das Device zu wechseln.
Ebenfalls sehr spannend ist die Network Inspector - Traffic Interception Funktion, denn selbige erlaubt euch nicht nur den Traffic zu sehen, was bereits möglich war, auch die Veränderung von selbigem kann zu Testzwecken vorgenommen werden. Zuvor waren für derartige Aufgaben externe Tools nötig und nun kann man direkt aus der IDE heraus z.B. Fehler-Responses ausprobieren.
Google I/O Livestream
In wenigen Stunden geht es los, die Google I/O steht vor der Tür. Heute um 19:00 Uhr startet Googles Event, welches erwartungsgemäß neue Android und Pixel Informationen hervorbringen wird. Ebenfalls ein ein relevantes Thema dürfte AI werden.
Neben generellen spannenden Neuigkeiten, gibt es natürlich auch wieder Sessions und Workshops für Entwickler. Egal ob Mobile, Web, AI oder Cloud, in allen Bereichen gibt es frische Inhalte, welche ihr live oder später via Youtube anschauen könnt. Folgt einfach den Related Links und stellt euch euer I/O Programm zusammen.
Ich werde das Event vermutlich nicht direkt live schauen können, da es einen terminlichen Konflikt gibt, aber vor allem die Keynotes werde ich sehr zeitnah nachholen. Ich freue mich vor allem auf neue Android und Flutter Ankündigungen, aber das Thema AI geht natürlich auch an mir nicht vorbei.
Patchday - Device Marketing Names aktualisiert
In den letzten Tagen habe ich meine geplanten monatlichen Updates für meine Device Marketing Names Libraries vorbereitet. Nach etwas mehr Arbeit als gedacht konnte ich selbige nun online stellen und somit sind Version 0.6.3 open_in_new Device Marketing Names - Dart / Flutter und Version 0.4.3 open_in_new Device Marketing Names - Kotlin verfügbar.
Im Dart / Flutter Bereich gab es die gewohnten Updates von Abhängigkeiten und natürlich einen frischen Datensatz, welcher von meinem Device Identifiers Tool geliefert wird.
Die Kotlin Library war dieses Mal etwas mehr Aufwand, da sich mit Gradle 8 open_in_new und dem Android Gradle plugin (AGP) 8 open_in_new einige Dinge geändert haben. Durch diese Breaking Changes musste ich unter anderem die Einbindung von Jacoco open_in_new für die Auswertung der Tests umbauen und auch der Release Flow, welcher über das maven-publish Plugin realisiert wird, musste angepasst werden. Auch wenn das Ganze etwas aufwendiger war als gedacht, kann ich nun direkt auf das offizielle Jacoco Plugin setzen, der Release Flow wurde vereinfacht und einige Stellen im Code sind nun besser strukturiert. Diese Änderungen sollten sich für Nutzer der Library nicht bemerkbar machen, hier dürfte lediglich der aktualisierte Datensatz sichtbar werden.