Laufendes Aufgabenmuster

In diesem Leitfaden werden die Komponenten beschrieben, aus denen eine laufende Aufgabe in Form einer Stoppuhr besteht. Eine laufende Aufgabe zeigt eine Live-Karte auf der Zeitachse, solange ein Nutzer an einer Aufgabe beteiligt ist und es ihm ermöglicht, die Live-Karte aufzurufen und zu verlassen, wenn sie Informationen benötigt.

Außerdem erhalten Sie Tipps für das Design, die Entwicklung und den Vertrieb, die für den Aufbau Ihrer eigenen Glassware wichtig sind.

Hinweis

Die vollständige Quelle der Stoppuhr ist auf GitHub verfügbar. Du solltest sie vorerst in Android Studio importieren, da in diesem Leitfaden stark darauf verwiesen wird.

  1. Klicken Sie im Schnelleinstieg auf Check out from version Control > Git (Über die Versionsverwaltung > Git auschecken).
  2. Kopieren Sie die Klon-URL aus Stopwatch.
  3. Fügen Sie die Klon-URL in die Vcs-Repository-URL ein und klicken Sie auf Klonen.
  4. Klicken Sie auf dem folgenden Bildschirm auf Ja.
  5. Klicken Sie auf dem folgenden Bildschirm auf OK.
  6. Erstellen Sie das Projekt und führen Sie es auf Ihrem verbundenen Glass aus. Klicken Sie dazu auf die Schaltfläche Play. Prüfen Sie auf jeden Fall die README des Beispiels auf Details zum Aufruf.

Lerninhalte

Sie erfahren, wie Sie Komponenten aus dem Android SDK verwenden, um den Großteil der fortlaufenden Stoppuhr-Aufgabe zu erstellen, und wie Sie das GDK dann in das Glass-Erlebnis einbinden können. Hier finden Sie eine Liste der Themen, über die Sie sich informieren werden:

  • Benutzerdefinierte Ansicht zum Zeichnen auf der Live-Karte erstellen
  • Dienst zum Verwalten der Live-Karte erstellen
  • Ein Menü, über das Nutzer die Live-Karte aus der Zeitachse entfernen können
  • Durch einen Sprachbefehl wird die Stoppuhr über das Haupt-Sprachmenü gestartet.

Design

Nehmen Sie sich vor der Entwicklung Zeit, die Glassware zu entwerfen. Dadurch erhalten Sie eine gute Vorstellung davon, welche UI-Abläufe in Glass am besten funktionieren, welchen Sprachbefehl Sie verwenden und wie Ihre Karten aussehen werden.

Das Entwerfen von Glassware ist natürlich ein iterativer Prozess und einige der Dinge, die Sie jetzt entwerfen, werden sich ändern. Aber ein guter Teil dieser Arbeit zu Beginn ist für den Aufbau einer großartigen Erfahrung entscheidend.

UI-Ablauf

Das Entwerfen des UI-Ablaufs ist eine einfache Übung, bei der Sie Ihre Glassware vor dem Schreiben einer Codezeile visualisieren können. Wir arbeiten ständig an der Entwicklung unserer Glassware.

Sehen wir uns die wichtigsten UI-Elemente der Stoppuhr an, um Ihnen einen Eindruck davon zu vermitteln, wie die UI funktioniert und wie hilfreich dieser Vorgang beim Erstellen Ihrer eigenen Glassware ist.

Hauptbenutzeroberfläche

Die Stoppuhr enthält nur einen Hauptablauf, weil sie ziemlich einfach ist.

Wenn Nutzer die Glassware aufrufen, wird ein 3-Sekunden-Countdown-Interstitial angezeigt, bevor die eigentliche Stoppuhr beginnt. Die Stoppuhr wird dann hochgezählt, bis der Nutzer sie mit einem Stop-Menüpunkt aus der Zeitachse entfernt.

Sprachbefehl

Sie sollten einen Sprachbefehl schon früh im Designprozess herausfinden. Mit Sprachbefehlen können Nutzer Glassware bei Bedarf über das Sprachmenü von Glass Home (Uhrkarte) starten. Dies ist ein wesentlicher Bestandteil der Entwicklung von Glassware.

Der Befehl Update aktualisieren eignet sich beispielsweise gut für ein Fire-and-Forget-Modell, bei dem Nutzer Text sprechen und von Glassware verarbeitet werden, ohne dass ein weiterer Eingriff des Nutzers erforderlich ist. So können die Nutzer schnell wieder zu dem gelangen, was sie tun.

Andererseits möchten Sie für Nutzer, die ein Spiel spielen, normalerweise auf einen Startbildschirm geleitet werden, damit sie zuerst den Überblick erhalten. Da durch diesen Sprachbefehl höchstwahrscheinlich eine immersive Wiedergabe ausgelöst wird, können Sie davon ausgehen, dass den Nutzern zusätzliche Bildschirme und Menüs angezeigt werden, um das Spiel zu starten. Es ist in der Regel schlecht, Nutzer sofort in ein Spielerlebnis aufzunehmen, direkt nach dem Sprachbefehl.

Die Stoppuhr verwendet den Sprachbefehl Stoppuhr starten. Nachdem der Nutzer den Sprachbefehl aufgerufen hat, startet die Stoppuhr sofort nach einem kurzen Countdown-Bildschirm mit Interstitial-Anzeigen. Das ist besser als ein Menüelement zum Starten. Bei laufenden Aufgaben sollten Sie sich in der Regel darauf konzentrieren, Nutzer so schnell wie möglich zu erreichen, wo es sinnvoll ist.

Kartenlayouts

Unabhängig davon, ob du Immersionen oder Live-Karten erstellst, solltest du nach Möglichkeit CardBuilder oder XML-Layouts verwenden.

Oftmals müssen Sie jedoch Ihr eigenes Layout erstellen. Beachten Sie daher unsere UI-Richtlinien, um die beste Glassware zu erhalten.

Die Stoppuhr folgt den allgemeinen Layoutrichtlinien, hat aber benutzerdefinierte Layouts für die Benutzeroberfläche, die mit Android-Standardkomponenten wie Ansichten und Layouts verwendet werden.

Entwickeln

Zum Entwickeln von Livekarten verwenden Sie dieselben Tools, die Sie für die Android-Entwicklung verwenden, um den Großteil der Glassware zu erstellen. Dann verwenden Sie die APIs im GDK-Add-on, um auf Glass-spezifische Funktionen wie Livekarten und Sprachbefehle zuzugreifen.

Sie verwenden häufig gängige Android-Komponenten, um Glassware zu erstellen. Beachten Sie jedoch, dass einige Konzepte manchmal anders sind. Du renderst und verwaltest Livekarten beispielsweise mit einem Android-Dienst, was bei herkömmlichen Android-Apps normalerweise nicht der Fall ist. Ein weiteres Beispiel: Live-Karten haben keinen eigenen UI-Kontext. Daher müssen Sie eine Shell-Aktivität verwenden, in der ein Menü für die Live-Karte angezeigt wird. Wie diese Komponenten aufgebaut sind, erfahren Sie später in diesem Leitfaden.

Im weiteren Verlauf der Entwicklungsabschnitte wird erläutert, wie die Stoppuhr aufgebaut ist und welche Hauptkomponenten des Projekts Sie zuvor importiert haben. Es ist nützlich, jetzt Android Studio zu haben, damit du dem Verlauf folgen kannst. Der Quellcode selbst ist kommentiert. In diesem Abschnitt werden der allgemeine Zweck jeder Datei und hilfreiche Tipps für Ihre eigene Glassware beschrieben.

Sprachbefehl

Sie erstellen Sprachbefehle mit einer XML-Ressourcendatei, die den von Ihnen verwendeten Befehl angibt. Geben Sie dann die XML-Ressource in der Datei AndroidManifest.xml an.

Die folgenden Dateien sind dem Sprachbefehl der Stoppuhr zugeordnet:

  • res/xml/voice_trigger_start.xml: Gibt den zu verwendenden Sprachbefehl an.
  • AndroidManifest.xml: Gibt den Live-Kartendienst so an, dass er startet, wenn der Sprachbefehl gesprochen wird.

Countdown-Ansicht

Die Stoppuhr zeigt einen Countdown an, bevor die Zeit tatsächlich aufgezeichnet wird, damit Nutzer sehen, dass die Zeit bald abläuft.

Die folgenden Dateien sind der Countdown-Ansicht zugeordnet:

  • res/layout/card_countdown.xml: Definiert das Layout des Countdown-Viewers.
  • src/com/google/android/glass/sample/stopwatch/CountDownView.java: Definiert die Ansicht für den Countdown.

Chronometer-Ansicht

Dies ist die Hauptansicht der Stoppuhr. Es zeigt die verstrichene Zeit seit dem Countdown des Interstitials an. Die folgenden Dateien sind der Chronometer-Ansicht zugeordnet:

  • res/layout/card_chronometer.xml: Definiert das Layout der Stoppuhransicht.
  • src/com/google/android/glass/sample/stopwatch/ChronometerDrawer.java: Definiert, wie die Ansicht gerendert wird. Der Live-Kartendienst ruft diese Klasse auf, um für den Live-Kartendienst zu zeichnen.
  • src/com/google/android/glass/sample/stopwatch/ChronometerView.java: Die Stoppuhransicht, in der das vorherige Layout als UI verwendet wird.

Stoppuhrdienst

Dieser Dienst verwaltet den Lebenszyklus und das Rendering der Live-Karte. Die folgenden Dateien sind mit diesem Dienst verknüpft:

  • src/com/google/android/glass/sample/stopwatch/StopwatchService.java: Verwaltet die Stoppuhr-Live-Karte und verwaltet den Dienstlebenszyklus.

Livekarten haben keinen eigenen UI-Kontext zum Anzeigen eines Menüs, da sie ihre UIs im Kontext der Zeitachse rendern.

Um diese Einschränkung zu umgehen, erstellen Sie eine durchscheinende Aktivität, die über der Zeitachse angezeigt wird, und zeigen dann das Menü dieser Aktivität direkt an, nachdem Nutzer auf die Live-Karte getippt haben.

  • src/com/google/android/glass/sample/stopwatch/MenuActivity.java: Gibt die durchscheinende Menüaktivität an, wenn das Menü sichtbar ist.
  • res/values/styles.xml: Definiert den durchscheinenden Stil, der auf das Menü angewendet wird.
  • res/menu/stopwatch.xml: Die Menüressource, die den obligatorischen Menüpunkt Stop enthält.

Android-Manifest

In der Datei AndroidManifest.xml werden die wichtigsten Komponenten Ihrer Glassware beschrieben, damit das System weiß, wie es ausgeführt wird. Das Manifest für Charades deklariert Folgendes:

  • Symbol und Name der Glassware In Glass werden diese Informationen im Haupt-Touch-Menü angezeigt, wenn mehr als eine Glassware auf denselben Sprachbefehl reagiert.
  • Alle mit der Stoppuhr verknüpften Dienste und Aktivitäten. Dies ist erforderlich, damit das System weiß, wie die Komponenten der Glassware gestartet werden.
  • Der Sprachbefehl und ein Intent-Filter, der den Live-Kartendienst startet, wenn der Sprachbefehl gesprochen wird.
  • Ein Versionscode für die Glassware Dieser Code muss jedes Mal aktualisiert werden (und normalerweise auch der Versionsname), wenn eine neue Version dieses APKs in MyGlass hochgeladen wird.