XFWeather – Kleine Xamarin.Forms-App
Ich habe eine kleine Xamarin.Forms-App entwickeln, welche den Namen XFWeather trägt und, wie der Name schon vermuten lässt, das Wetter für einen bestimmten inkl. einer Vorhersage ausgibt. soll. Das besondere an dieser App ist, dass ich keinen plattformspezifischen Code geschrieben habe, sondern die gesamte Logik im portablen App-Teil geschrieben wurde. Trotzdem läuft die App sowohl unter Windows, Android als auch iOS. In diesem Beitrag möchte ich nun das Ergebnis vorstellen und gleichzeitig auf einige Stolpersteine hinweisen.
Fakten-Skill für Alexa in C# entwickeln
Im Rahmen der letzten Meetups, welche ich zum Bereich Skill-Entwicklung für Alexa zusammen mit meinem Kollegen Thomas gehalten habe, habe ich einen kleinen Fakten-Skill über medialesson entwickelt und den Teilnehmerinnen und Teilnehmern vorgestellt. Ausgehend von diesem Beispiel habe ich ein Template für Visual Studio entwickelt, welches es ermöglicht mit sehr wenig Aufwand seinen eigenen Fakten-Skill zu schreiben und diesen dann auch zur Zertifizierung an Amazon zu übersenden. In diesem Beitrag möchte ich das Template kurz vorstellen und vielleicht entwickelt der eine oder andere ja dadurch seinen eigenen Skill.
Rückblick: Alexa, mach‘ den Abwasch – Meetup in Pforzheim
Nun liegt es bereits wieder einige Stunden hinter uns, das erste Meetup im Jahre 2018 in den Räumlichkeiten der medialesson GmbH. Dieses Meetup hat sich hauptsächlich mit dem Sprachassistenten Alexa beschäftigt und hat die Frage beantwortet, wie man diesen um eigene Funktionalitäten erweitern kann. Zusammen mit meinem Kollegen Thomas haben wir aufgezeigt, wie man in C# und AWS ganz einfach einen eigenen Fakten-Skill entwickeln kann, hier am Beispiel von medialesson.
Alexa Skills mit .NET entwickeln
Ich habe ja bereits gezeigt, wie man mit wenig Aufwand seinen eigenen Skill für Alexa entwickeln kann. Mittlerweile habe ich schon selbst einige Alexa-Skills veröffentlicht und habe mir eine kleine Projekt-Vorlage gebastelt, welche die Erstellung eines eigenen Skills um ein Vielfaches beschleunigt. Diese Vorlage findet man in einem GitHub-Repository und kann sich dort eine Zip-Datei herunterladen, welche man dann nur noch in das Vorlagenverzeichnis von Visual Studio speichern muss und anschließend kann die Entwicklung des Skills losgehen.
Xamarin.Forms Projekt mit .NET Standard
Wenn man in Visual Studio ein neues Xamarin.Forms Projekt anlegt, so hat man bei den Strategien für das Teilen des Codes nur zwei Varianten zur Auswahl: Shared Project oder Portable Class Library. Ich persönlich kann hier von dem Shared Project nur abraten, da hierbei die Dateien in die plattformspezifischen Projekte gelinkt werden und man so mit Compiler-Direkten arbeiten muss, wenn sich der Code auf unterschiedlichen Plattformen anders verhalten soll. Aber auch die Portable Class Library kann ich nicht bedingungslos empfehlen, da ich hier nur ein Subset von .NET zur Verfügung habe. Meine Empfehlung wäre hier .NET Standard. Derzeit gibt es hierfür noch kein Template, aber ich zeige euch in diesem Beitrag, wie ihr mit wenig Aufwand aus der PCL eine .NET Standard Class Library machen könnt.