2013-09-06 17 views
5

Ich habe eine Anwendung auf meine Google Brille installiert, aber sobald ich sie geschlossen habe, muss ich eine Verbindung zu meinem PC herstellen, um es erneut zu starten.So starten Sie App auf Google Glass mit Sprachbefehl

Wie kann ich meine App in der Liste der Sprachbefehle registrieren? Z.B. "Ok Glas, zeig mir den Würfel". Auf dem Hauptbildschirm beginnen Sie mit "OK Glass" und sagen dann eine benutzerdefinierte Zeichenfolge (zum Beispiel "zeige mir den Würfel") und die Anwendung, die dieser Zeichenfolge zugeordnet ist, wird gestartet. Ich habe das schon gesehen, indem ich ein paar Zeilen in das Anwendungsmanifest eingefügt habe, aber ich kann es nicht mehr finden. Mir ist bewusst, dass dies ein verwurzeltes Glass-Gerät erfordern könnte, aber das ist in Ordnung.

This discussion ist zu dieser Frage verwandt, gibt aber keine Antwort.

Antwort

3

Es gibt ein paar hacky Weisen, Anwendungen zu starten; Ich habe eine Seite geschrieben, die sie beschreibt here.

Wie bei der Sprachauslösung gibt es zwei Dinge, die Sie tun müssen.

Zuerst fügen Sie folgendes zu Ihrem Manifest als Kind Ihres <activity> Element, das Sie starten möchten:

<intent-filter> 
    <action android:name="com.google.android.glass.action.VOICE_TRIGGER" /> 
</intent-filter> 
<meta-data android:name="com.google.android.glass.voice_trigger" android:resource="@string/voice_menu_trigger" /> 

und eine entsprechende Zeichenfolge im res/string.xml erstellen.

Zweitens, um die native App Stimme Build-Option auf einem verwurzelten Gerät aktivieren (beschreibe ich alle hier Labors und wie sie here ermöglichen):

> adb shell setprop persist.lab.native_app_voice true 

Hinweis: Dies funktioniert nur, wenn Ihr Glas ist im userdebug Modus. Follow these instructions to put it into userdebug mode.

+0

Das Metadatenelement ist nicht genug, Sie brauchen auch den Intent-Filter. Ich habe deine Antwort aktualisiert, um das widerzuspiegeln. –

+0

Oh, hoppla! Muss an meinen Copy-Paste-Skills arbeiten :) Danke für die Bearbeitung. –

+0

Eine weitere Bemerkung. Der 'setprop'-Befehl funktioniert, aber er setzt den Wert in'/system/build.prop' wie hier beschrieben (http://glasswiki.org/index.php?title=Using_Google_Labs_Features#Enabling_and_Disabling_Google_Labs_via_the_Build_Properties_File), stattdessen setzt er ein Wert in '/ data/property /' wie hier beschrieben (http://stackoverflow.com/questions/16440945/android-system-properties-unsetting-them-on-the-command-line) –