NuGet Package: ICanHazDadJokeSharp
Mir war am vergangenen Wochenende ein wenig langweilig und so habe ich mir gedacht, doch mal wieder einen kleinen C#-Wrapper für eine bekannte API zu schreiben. Ich habe ja bereits ein paar NuGet-Pakete veröffentlicht und nun ist noch ein weiteres dazu gekommen: ICanHazDadJokeSharp. Dabei handelt es sich um einen Wrapper für die Webseite icanhazdadjoke.com, welche eine Vielzahl von englischen Dad Jokes bereitstellt.
App Center mit .NET MAUI Apps verwenden
Ich habe bereits in früheren Blog-Posts das App Center vorgestellt. Dabei handelt es sich um eine Plattform von Microsoft, welche es ermöglicht Nutzungsstatistiken und App-Abstürze zu protokollieren. Außerdem gibt es noch die Option sich die Apps bequem bauen zu lassen oder automatisierte UI-Tests durchzuführen. Ich habe das App Center für nahezu alle meiner Xamarin.Forms Apps im Einsatz und lange Zeit musste man nun auf den Support von .NET MAUI Apps warten. Allerdings wurde vor kurzem die erste Preview-Version der NuGet-Packages veröffentlicht, so dass man jetzt zumindest auf die Nutzungsstatistiken und die App-Abstürze zurückgreifen kann. In diesem Blog-Post möchte ich euch nun kurz zeigen, wie ihr das App Center in euere .NET MAUI integrieren könnt.
NuGet: Xamarin Community Toolkit
Der eine oder andere hat bestimmt schon von der Ankündigung im Rahmen der Microsoft Build-Konferenz 2020 gehört, dass mit Xamarin.Forms 5.0 die letzte Version von Xamarin.Forms erscheinen wird und im November 2021 mit der Veröffentlichung von .NET 6 als .NET MAUI fortgeführt wird. Seit einiger Zeit wurde nun Xamarin.Forms 5.0 veröffentlicht. Doch was passiert mit den Features, welche es nicht mehr in einen stabilen Zustand gebracht haben? Hier kommt das Xamarin Community Toolkit ins Spiel, welches ich euch in diesem Beitrag näher vorstellen möchte.
Foto-Galerie App mit Xamarin.Forms
Ich habe hier im Blog bereits das NuGet-Package PixabaySharp von meinem Kollegen Thomas Pentenrieder und mir vorgestellt. Nun dachte ich mir, dass es doch schön wäre, wenn man auch gleich ein Beispielprojekt hätte, was diese Library einmal in Aktion zeigt. Wie der Titel schon verrät, habe ich mich natürlich für Xamarin.Forms entschieden und möchte jetzt in diesem Beitrag zeigen, wie ihr selbst mit wenig Aufwand eine kleine Foto-Galerie App schreiben könnt. Dabei werden ich nicht jeden einzelnen Code-Block hier im Blog vorstellen, aber am Ende des Beitrags findet ihr den Link zu einem GitHub-Repository, wo ihr den vollständigen Code herunterladen könnt.
Xamarin.Essentials Update auf Version 1.6
Ich habe vor einiger Zeit das NuGet Paket Xamarin.Essentials hier im Blog und auch auf Medium vorgestellt und ich habe auch schon das eine oder andere Video zu diesem Thema auf meinem YouTube-Kanal veröffentlicht. Bei Xamarin.Essentials handelt es sich um eine Sammlung von APIs, welche es ermöglicht normalerweise plattformabhängige Dinge, wie zum Beispiel das Abrufen der aktuellen Position oder das Senden einer eMail zu wrappen, so dass ein einfacher Aufruf in der .NET Standard Library möglich ist. Nun ist vor einigen Tagen eine neue Version dieser Library auf NuGet veröffentlicht worden und ich möchte in diesem Beitrag nun auf die Neuerungen kurz eingehen.
Xamarin.Forms: Bilder aufnehmen bzw. auswählen
Je nach Anwendung kommt es immer mal wieder zu einem Szenario, wo der Nutzer aus seiner Foto-Galerie Fotos auswählen oder auch Fotos per Kamera aufnehmen kann, welche dann innerhalb der App weiterverarbeitet werden sollen. In diesem Beitrag möchte ich euch zeigen, wie wir mit der Hilfe eines NuGet-Packages von James Montemagno dieses Szenario mit wenig Code-Aufwand umsetzen können.
Xamarin.Forms: Welche NuGet Pakete verwende ich?
In diesem Beitrag möchte ich gerne aufzeigen, welche NuGet Pakete bei mir zur Grundausstattung gehören, wenn ich eine neue Xamarin.Forms App erstelle. Ich kann hier natürlich nicht auf alle Pakete eingehen, da diese von Projekt zu Projekt unterschiedlich sind, aber trotzdem gibt es eine handvoll von Paketen, welche ich euch natürlich nicht vorenthalten möchte. Bevor es losgeht, sei noch angemerkt, dass dies natürlich eine subjektive Auflistung ist und auch nicht für jeden in Frage kommt.
Alexa-SkillRequest verifizieren
Bisher habe ich ja bereits den einen oder anderen Alexa-Skill veröffentlicht und bisher sind die Funktionen alle auf AWS, also in der Amazon Cloud, gehostet. Aber es gibt natürlich auch andere Cloud-Anbieter, wie zum Beispiel Microsoft Azure und da bei einem Alexa-Request auch nur JSON-Dateien ausgetauscht werden, ist es auch relativ einfach einen Skill bei einem anderen Cloud-Anbieter zu hosten. Amazon möchte jedoch, dass jeder Request dahin gehend verifiziert wird, dass dieser wirklich von Alexa stammt und ich möchte in diesem Beitrag zeigen, wie man dies innerhalb einer Azure Function mit der Hilfe des NuGet-Packages Alexa.NET und ein wenig Code erledigt.
What3Words Sample-App
Im Rahmen der Digitalen Woche in Kiel bin ich zum ersten Mal mit dem Dienst What3Words in Kontakt geraten. Dabei handelt es sich um einen Dienst, welche die Weltkarte in kleine Quadrate unterteilt und dann jedem Quadrat drei Begriffe zuordnet. Ziel soll es sein, dass sich diese Begriffe leichter merken lassen, da diese nicht zusammenhängen (wie zum Beispiel welche.tischtennis.bekannte), als eine Adresse inkl. Postleitzahl. Ich habe mich dann näher mit der API dieses Dienstes befasst und einen kleinen C#-Wrapper geschrieben, welcher die Basis-Funktionalitäten bereits abgedeckt.
Einen Tweet aus C# veröffentlichen
Immer wieder stößt man auf der Plattform Twitter auf Bots. Dabei handelt es sich um Twitter-Konten, welche nicht durch Menschen betrieben und mit Inhalt gefüllt werden, sondern um Computer-Programme, welche zum Beispiel in regelmäßigen Abständen automatisiert das aktuelle Wetter ausgibt oder die Aktienkurse. Ich habe mir mal angeschaut mit welchem Aufwand man selbst aus seinem C#-Programm einen Tweet absetzen kann und dies ist wirklich sehr simpel und in diesem Beitrag zeigen ich euch, wie das geht.
Xamarin.Essentials – Plattformübergreifende APIs
Mit Xamarin.Forms versucht man ja auf einer einzigen Code-Basis sowohl die Business-Logik als auch das Layout abzubilden. Dies funktioniert in weiten Teilen auch recht gut, aber trotzdem gelangt man immer wieder an den Punkt, wo man plattformspezifischen Code benötigt. Ich denke hier zum Beispiel an das Abrufen der aktuellen Position des Nutzers oder das Versenden einer SMS/eMail. Es gibt hier eine Vielzahl von Features, welche plattformspezifisch umgesetzt werden müssten. Glücklicherweise hat die Community hier zahlreiche NuGet-Packages bereit gestellt, welche man in seine Xamarin.Forms App integrieren kann. Nun hat man sich jedoch hingesetzt und diese Funktionalitäten alle in ein großes NuGet-Package zusammengefasst, welches auf den Namen Xamarin.Essentials hört und zur Zeit in einer Preview-Version vorliegt.
XAML Standard ausprobiert
Auf der Build Conference im Jahre 2017 in Seattle hat Microsoft XAML Standard angekündigt. Aktuell ist es nämlich so, dass sich die Properties und auch Controls vom Naming her zwischen UWP, WPF und auch Xamarin.Forms zum Teil stark unterscheiden. Hat man zum Beispiel bereits eine bestehende UWP-App geschrieben, kann man den verwendeten XAML Code nicht direkt in eine Xamarin.Forms-App übernehmen, sondern muss hier umständlich ein paar Anpassungen vornehmen. Deshalb versucht Microsoft nun mit XAML Standard entsprechend einen einzigen Dialekt zu entwickeln, welche für alle Apps und Anwendungen funktioniert und eine schnelle Portierung möglich macht. In diesem Beitrag möchte ich einmal den aktuellen Stand von XAML Standard in einer Xamarin.Forms App ausprobieren und schauen, ob man bestehenden Code wirklich so einfach portieren kann.