2014-09-02 15 views
25

Ich habe ein Smartphone-App mit einer Verschleiß-Anwendung, die in der es, ähnlich wie bei den ersten beiden Schritten dieses Abschnitt verpackt wurde:"Nein, fehlende Funktion: WATCH", wenn ich versuche, meine Smartphone-App mit der Wear-App zu starten?

https://developer.android.com/training/wearables/apps/packaging.html#Studio

ich ursprünglich wurde gesagt, dass mein Smartphone nicht ausgeführt wurde SDK groß genug, um die App zu unterstützen (mein Telefon wurde mit KitKat, anscheinend brauchte ich API 20), so dass ich jetzt mein Nexus 7 mit Android L Vorschau verwende, und dieses Problem hat sich gezeigt:

Nexus 7 Compatible: No, missing feature: WATCH

I Habe einen Smartwatch Emulator und ta blet running, und beide sind mit dem adb -d forward tcp: 5601 tcp: 5601 Trick verbunden, so habe ich keine Ahnung, wie das jetzt zu beheben!

Wie kann ich die Smartphone App starten und automatisch zulassen, dass die Wear App auf dem Emulator installiert wird?

Antwort

50

In Ihrem Projekt haben Sie zwei Anwendungen:

  • Mobile
  • Wearable


Mobile App sollte sollte (Telefon/Tablet) und Wearable App auf mobilen Gerät installiert werden installiert sein auf Android Wear Gerät.

Diese Nachricht No, missing feature: WATCH bedeutet, dass Sie versuchen, Wearable App auf dem Handy zu installieren - Sie sollten das nicht tun, Ihr Mobilgerät ist keine Uhr. Also noch einmal: Starten Sie einfach Mobile App auf Handy und Wearable App auf Android Wear.

Mir wurde gesagt, ursprünglich, dass mein Smartphone nicht lief ein SDK große genug, um die App zu unterstützen (mein Handy KitKat wurde mit offenbar ich benötigt API 20), so dass ich jetzt mein Nexus bin mit 7 mit Android L Vorschau, und dieses Problem hat sich gezeigt:

Nur die Wearable ca. 20 API-Ebene erfordern sollte, aber Mobile App andere SDK Ebene ausrichten können (wie 10, 14 etc.). Sie müssen keine höhere SDK-Stufe für die App Mobile festlegen, nur weil sie die App Wearable unterstützt.

Wie kann ich die Smartphone-App ausführen lassen und automatisch zulassen, dass die Verschleiß-App auf dem Emulator installiert wird?

Wie in der Anleitung beschrieben, die Sie verknüpft haben:

Wenn sie richtig verpackt, wenn Benutzer die Handheld-App herunterladen, automatisch die System, das die tragbare App auf das gekoppelte tragbare schiebt.

Aber bitte den Hinweis am Anfang der Seite lesen:

Hinweis: Diese Funktion funktioniert nicht, wenn Sie Ihre Anwendungen mit einem Debug-Schlüssel signieren bei der Entwicklung. Während der Entwicklung ist die Installation von Apps mit adb Installation oder Android Studio direkt auf dem Wearable erforderlich.

Das bedeutet, dass die automatische Installation Wearable App nach Mobile App Installation (mit Wearable App innerhalb verpackt) wird nach der Unterzeichnung App mit Ihrem Verlag Zertifikat nur funktionieren (und nicht mit dem Debug ein - wie von während der Standard-Anwendung Starts erfolgt Android Studio/Eclipse).

+0

Danke für den Zusammenbruch. Ihre Erwähnung der Verwendung von adb-Installation in der Nähe des unteren war auch nützlich! – lukatar

+0

Froh, dass ich helfen könnte :) Diese Erwähnung ist ein Zitat von der Spitze dieser Seite. 'Adb install' zu tun ist im Prinzip das gleiche wie nur Apps von Android Studio/Eclipse zu starten. Während der Entwicklung müssen Sie lediglich zwei Anwendungen ('Wearable' zum Ansehen und' Mobile' to Telefon/Tablet) getrennt auf zwei Geräten starten. –

11

Ich hatte den gleichen Fehler, als ich versuchte, nicht tragbare Anwendung auf meinem Gerät laufen zu lassen und der Fehler war aufgrund eines Android Studio-Problems mit uses-feature Attribut im Manifest falsch (es liest erforderlich falsch als wahr):

<uses-feature 
     android:name="android.hardware.type.watch" 
     android:required="false"/> 

Wenn Sie es aus dem Manifest entfernen, wird der Fehler verschwinden. Ich denke, dass es in Android Studio 1.4.1 oder 1.5 bereits behoben sein sollte.

43

Bitte schauen Sie sich das an!

enter image description here

Vielleicht sollten Sie die APP Artikel auswählen, bevor Sie Ihre Anwendung starten.

+3

Ich bin wirklich froh, dass es endlich ein Problem gibt, das solch eine einfache Lösung hat. –

0

Überprüfen Sie, ob Sie kein anderes Android-Projekt geöffnet haben. Ich habe auch dasselbe Problem gesehen, das gelöst wurde, nachdem ich android Projekt geschlossen habe, das Ziel-API größer als das der Uhr hat.