Bestehende App Projekte für Android Wear Smartwatch umsetzten

Seitdem Smartwatches auf den Markt gekommen sind, stellen sich natürlich viele Entwickler die Frage, wie auch sie ihre App auf das Handgelenk der User bringen können und die App Projekte Smartwatch tauglich machen können. Bevor man sich um das "Wie" kümmert sollte man allerdings natürlich noch ein, zwei Gedanken an das "Warum" verschwenden. Denn erst wenn ein sinnvoller Usecase definiert werden konnte, steht man auch am Anfang der Umsetzung.
Wie setzt man also ein bereits bestehendes Projekt eine Applikation für eine Smartwatch - in unserem Fall Android Wear - um? Oftmals ist ja aller Anfang schwer. In diesem Fall aber muss das nicht so sein. Wir haben für einen einfachen Start die ersten Schritte in einer kurzen Anleitung zusammengefasst.

Android Wear Smartwatch Modul in bestehendes Projekt einfügen

Man beginnt damit, dass man ein neues Modul im vorhandenen Projekt anlegt.

Bestehende App Projekte für die Android Wear Smartwatch umsetzten Navigation zu New Module
© bluesource.at

Mit dem Klick auf “New Module” öffnet sich ein Installations Wizard. In diesem muss zu Beginn angegeben werden, welche Art von Modul erstellt werden soll. Für unseren Fall wird hier natürlich das “Android Wear Module” ausgewählt.

Bestehende App Projekte für die Android Wear Smartwatch umsetzten Modul Auswahl
© bluesource.at

Im nächsten Schritt ist es wichtig darauf zu achten, dass der Package Name gleich wie der Name des Packages der Applikation ist. Am besten benennt man die Library “Wear” damit später auf einen Blick erkannt werden kann, dass es sich um das Smartwatch Projekt handelt.

Bestehende App Projekte für die Android Wear Smartwatch umsetzten Modul Konfiguration
© bluesource.at

Als nächstes muss ausgewählt werden, welches Layout die Smartwatch App haben soll. Für unser Beispiel haben wir “Blank Wear Activity” gewählt.

Bestehende App-Projekt für die Android Wear Smartwatch umsetzten Smartwatch Activity auswählen
© bluesource.at

Am Ende kann dann noch ein Name für die „MainActivity“ vergeben werden. Wie man am Screenshot gut erkennen kann, gibt es zwei *.xml Layouts. Eines für eckige (square) und eines für runde (round) Smartwatches. Eine gute Methode um später nur mit einer Layout Datei arbeiten zu müssen, ist "includes" zu verwenden. So können Änderungen für beide Layouts gleichzeitig gemacht werden.

Bestehende App Projekte für die Android Smartwatch umsetzen Activity anpassen
© bluesource.at

Nach diesen Schritten ist ein Android Wear Modul im Projekt angelegt. Um zu überprüfen, ob das Modul auch erfolgreich angelegt wurde, sucht man einfach auf der linken Seite (Projektordner Hierarchie) das Modul mit dem Namen “Wear”.

Android Wear Smartwatch Kommunikation

Nachdem das Projekt angelegt worden ist, sollte man darauf achten, dass die “build types” und „signing configs“ welche in der Smartphone Applikation verwendet wurden auch in der Smartwatch Applikation verwendet werden. Mehr Infos dazu: Android gradroduct flavors with wearable aple pps

Um eine Kommunikation zwischen dem Smartphone und der Smartwatch herstellen zu können, muss das Projekt der Smartwatch in Gradle eingebunden werden. Dies kann auf folgende Art erfolgen: (buildType release: releaseWearApp project(path: ':wear’, configuration: 'release')).

Im Prinzip kann zwischen 3 verschiedenen Arten der Kommunikation unterschieden werden:

DataAPI:

  • Für die Synchronisation von großen aber auch kleinen Datenmengen
  • Die Geräte müssen zum Zeitpunkt des Sendens nicht miteinander verbunden sein. Eine Synchronisation findet einfach dann statt, sobald die Geräte miteinander verbunden werden.
  • Kann nicht entscheiden, welche Geräte Daten löschen oder senden dürfen. Die Logik dafür muss selbst eingebaut werden.
  • Es gibt einen DataApiLayer auf dem die Daten synchronisiert werden. Diesen Layer kann man auch später als URI ansprechen um Daten zu holen.
  • Kann keine Informationen an andere Applikationen auf den Geräten verschicken.
  • Weitere Informationen: DataApi 

MessageAPI:

  • Geeignet um kurze Nachrichten zu schicken, welche nur eine temporäre Auswirkung haben sollen. Beispiel: eine „Auf dem Handy öffnen“ Aktivität welche einfach ausgeführt werden soll. Die Information wann dies passiert, ist aber nicht wichtig.
  • Kann keine Informationen an andere Applikationen auf den Geräten verschicken.
  • Geräte müssen miteinander verbunden sein, um Daten schicken zu können.
  • Weitere Informationen: Message API

NodeAPI:

  • Um Informationen über Knoten zu erhalten (Knoten können alle Geräte sein, die ein Android Betriebssystem haben).
  • Verfolgt wann sich Geräte verbunden oder getrennt haben mittels NodeListeners Methode.
  • NodeApi’s werden an alle Applikationen am Gerät geschickt.
  • Weitere Informationen: NodeAPI

Sobald die geeignete Kommunikationsmethode gewählt wurde, ist man in der Lage Informationen vom Smartphone mit der Smartwatch zu teilen. Sollten Probleme in der Kommunikation auftreten, empfiehlt es sich, ein Testprojekt anzulegen, bei dem keine speziellen “build typs” und „signing configs“ verwendet werden. Damit können Fehler mit dem Kommunikationsprogramm bzw. Fehler mit der Verbindung ausgeschlossen werden. Diese Tipps helfen, um die App Projekte Smartwatch tauglich zu machen.

Alle Einträge anzeigen