#rTsd – Road to Surface Duo, das Entwicklertagebuch, Teil 6: SDK und Emulator

#rTsd – Road to Surface Duo, das Entwicklertagebuch, Teil 6: SDK und Emulator

Es ist soweit! Endlich kann unsere #rTsd App zum ersten Mal auf einem Surface Duo (Emulator) gestartet werden. Was hierzu noch alles nötig war und wie hierbei meine Erfahrungen waren, erfahrt ihr in diesem Tagebucheintrag. Für alle, denen diese Artikelreihe noch unbekannt ist: Das habt ihr bislang verpasst, könnt euch aber natürlich nachträglich einlesen:

Tl;dr: Neue Features in Kürze erklärt

Für alle Leser, die in Eile sind, hier ein Abriss der neuen Features der #rTsd-App in Kürze. Manche dieser Funktionen sind im folgenden Beitrag ausführlicher erklärt. Den aktuellen Quelltext hierzu findet ihr wie immer auf GitHub.

Erste Anpassungen an das Surface Duo: Durch die Veröffentlichung des SDKs (Microsoft Blog) für das Microsoft Surface Duo konnte ich unsere App in etlichen Bereichen bereits an das neue Gerät anpassen – auch ohne es physisch in den Händen halten zu können.

YouTube Feed von Dr. Windows eingebaut: Durch den zusätzlich verfügbaren Platz auf den großen Bildschirmen des Duo konnte ich eine zusätzliche Funktionalität hinzufügen: Eine Übersicht der aktuellen Videos auf dem YouTube Channel von Dr. Windows.

App Icon hinzugefügt: Unsere #rTsd-App besitzt nun auch ein eigenes App Icon (GitHub Issue). Somit findet man es nun auf den ersten Blick im App Drawer.

Hallo Surface Duo Emulator

Nun war es endlich soweit! Wie Dr. Windows berichtete, ist der Android Emulator für das Surface Duo nun verfügbar. Dies war der Startschuss, nun auch unsere App an die ersten verfügbaren Features anzupassen.

Hierbei wurde in Ermangelung eines noch nicht existierenden offiziellen Xamarin NuGet Packages (Wiki) die Library des Beispielsprojekt von Microsoft in einen eigenen Order in unsere Visual Studio Solution eingepflegt. Die beinhalteten Klassen wurden zu großen Teilen eins zu eins übernommen und erfuhren nur sehr geringe Anpassungen. Dies sorgte zwar für die benötigte Funktionalität, brachte aber auch etliche neue Warnungen in der Entwicklungsumgebung. Aufgrund der wohl noch vielen Iterationen der Library gehe ich diesen Nachteil für die kommenden Wochen erst einmal ein. Ich hoffe stark, dass Microsoft hier noch nachbessert und irgendwann diese lokalen Quelltextdateien durch ein oben erwähntes abgekapseltes NuGet Packages ablöst.

Microsoft Surface Duo SDK Files

Die Unterstützung für das Surface Duo brachte auch andere eher weniger gewollte Umstrukturierungen mit sich. Da die aus dem Microsoft-Beispiel stammende Control, welche zur Aufteilung der Inhalte auf die beiden Bildschirme des Gerätes benötigt wird, nicht noch zusätzliche ContentPages einbinden kann, musste hier für die Detailseite eine Codeduplizierung stattfinden.  Wir benötigen eine ContentView für die Nutzung im Zweibildmodus als auch eine ContentPage für die Benutzung auf traditionellen Android Telefonen als auch für den Einbildschirmmodus des Duos. Auch hier ist meine Hoffnung, dass Microsoft hier nachbessert und eine einfachere Befüllung beider Bildschirme in Zukunft bereitsteht.

Dr Windows Road To Surface Duo Emulator

Wer einen Tipp hat, wie man in XAML die ContentView aus einer ContentPage herauslösen kann, ohne hierbei zwei getrennte Dateien pflegen zu müssen, kann sich sehr gern im entsprechenden GitHub Repository zur App melden.

YouTube Video Feed

Bei den ersten Gehversuchen mit dem Emulator fiel auf, dass das Surface Duo merklich mehr Platz pro Bildschirm bietet, als ich das ursprünglich angenommen habe.

Diesen Platz wollte ich nicht verschwenden und führte dazu ein neues Feature ein. Nun ist es möglich, die aktuellen Videos des YouTube Channels von Dr. Windows auch in der #rTsd-App zu durchstöbern als auch schlussendlich auf der Detailseite anzusehen.

Durch den entsprechenden YouTubeService.cs wird das XML von YouTube abgegriffen und wie aus dem Blog-Feature in einer Listenansicht dargestellt.

Da man nicht immer Thumbnails der Videos abgreifen kann, liegt im Hintergrund der jeweiligen Listeneinträge ein Dr. Windows Platzhalterbild, welches sichtbar ist, falls nicht das eigentliche Vorschaubild geladen werden kann.

Save the date: 11.02. um 17:30 Uhr

Am 11.02.2020 findet um 17:30 Uhr unserer Zeitzone der „Microsoft 365 Developer Day Dual-screen experiences“ statt. Dieses Live-Event für Microsoft 365 und im Speziellen eben für die kommenden Dual-Screen-Geräte wird uns hoffentlich weitere Informationen und Details zur Entwicklung für das Surface Duo und Neo bieten. Spannend wird ebenfalls, dass nicht nur reine Entwicklerthemen auf der Agenda stehen, sondern auch Vorträge rund um Design und, von mir mit Spannung erwartet, Einblicke in das Szenario, welches Microsoft für diese Geräte sieht, auf der Tagesordnung stehen.

Microsoft 365 Surface Duo Live Event

Bis dahin kann ich nur jedem Technikenthusiasten und Windows Fan die offizielle TechCommunity zum Surface Duo SDK ans Herz legen. Diese noch recht stille und kleine Community soll die zentrale Anlaufstelle für Entwickler werden, welche sich für die kommenden Dual-Screen-Geräte aus Redmond interessieren. Persönlich hoffe ich stark, dass auch dieses Vorhaben aufgeht.

Was wünscht ihr euch?

Gibt es ein Thema, ein Feature oder offene Fragen, welche ihr gern behandelt hättet? Schreibt diese einfach in die Kommentare und lasst uns dort das weitere Vorgehen miteinander zusammen erarbeiten. Ich freue mich wirklich, ein Teil dieser spannenden Dr. Windows Community sein zu können.

Hinweis: Dieser Artikel stammt selbstverständlich von Tobias und nicht von Martin. Wir hatten da leider ein kleines technisches Problem.

Über den Autor
Martin Geuß
  • Martin Geuß auf Facebook
  • Martin Geuß auf Twitter
Ich bin Martin Geuß, und wie unschwer zu erkennen ist, fühle ich mich in der Windows-Welt zu Hause. Seit mehr als zwölf Jahren lasse ich die Welt an dem teilhaben, was mir zu Windows und anderen Microsoft-Produkten durch den Kopf geht, und manchmal ist das sogar interessant. Das wichtigste Motto meiner Arbeit lautet: Von mir - für Euch!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.



Kommentare
  1. Nicht wundern, hier spukt es nicht. Der Artikel musste wegen eines technischen Problems gelöscht und neu angelegt werden.
    Und ich dachte schon, das Du Tobias in Sachen Programmierung abgelöst hast und die Reihe alleine weiter fortführen willst. :lol
    Um Jens Riewa von der Tagesschau mal an dieser Stelle zitieren zu dürfen: "Nun meine Damen und Herren habe ich ein kleines Problem mit meinem... Gerät."
    Genauso wird es abgelaufen sein ;)
    könnte man die app schon jetzt auch auf andere Dual screen Geräten installieren, oder wird das nur auf dem duo gehen? lch würde die gerne auf meinem g8x ausprobieren.
    @G3oWolf
    Die App nutzt unter der Haube das Duo SDK. Ich weiß allerdings nicht ob hier das G8X eine "Magie" von sich selber macht.
    Du kannst es gerne berichten! :)
Nach oben