我刚开始为Google Glass开发,我知道GDK是否相当新,所以这可能还不可能,但这就是我想要的:
与“打个电话”提示或“发送消息”提示在“好眼镜”屏幕上一样,我希望我的应用程序在您选择语音时可以选择更多语音选项。通过这两个示例,您将看到一个联系人列表,您可以向上和向下点头以查看更多内容,应用程序只会采取进一步操作,您选择了一个显示的选项。目前有没有办法在我自己的应用程序上做到这一点?
感谢任何输入!
答案 0 :(得分:2)
您可以在活动开始后调用意图显示语音识别器。因此,您可以从启动时触发语音和提示,然后在您的Activity的onResume()中,通过某种提示调用语音识别器(或者您可以将收集到的初始语音串作为提示) :
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra( RecognizerIntent.EXTRA_PROMPT, "ok glass, here's my prompt" );
startActivityForResult(intent, 0);
然后,您需要一个onActivityResult()方法来处理VoiceRecognizer的返回形式。
这是GDK文档中描述的: https://developers.google.com/glass/develop/gdk/input/voice
不确定是否还有其他办法。
答案 1 :(得分:2)
我从another SO question找到了这个答案,似乎与您想要的完全一样。我亲自为自己的玻璃器皿试过它,效果很好。如下面的答案所述,有一点需要注意,使用相同“ok glass”语音命令的其他应用程序将共享子菜单;例如,在以下示例中,某些其他应用可能会添加其他游戏,例如“高尔夫”。另一个潜在的问题是,您必须为子菜单中的每个选项提供活动或服务。
“如果您在Glass上安装了多个活动/服务,这些活动/服务具有相同的语音触发器意图过滤器,则其所有名称(基于android:label
或<activity>
的{{1}}属性当您说出语音触发时,<service>
中的标记将出现在消歧“子菜单”中。
例如(假设AndroidManifest.xml
代表字符串“玩游戏”的语音触发器):
res/xml/play_a_game_trigger.xml
会给你一个看起来像
的语音菜单流<activity android:label="Tennis">
<intent-filter>
<action android:name="com.google.android.glass.action.VOICE_TRIGGER" />
</intent-filter>
<meta-data android:name="com.google.android.glass.VoiceTrigger"
android:resource="@xml/play_a_game_trigger" />
</activity>
<activity android:label="Bowling">
<intent-filter>
<action android:name="com.google.android.glass.action.VOICE_TRIGGER" />
</intent-filter>
<meta-data android:name="com.google.android.glass.VoiceTrigger"
android:resource="@xml/play_a_game_trigger" />
</activity>
请注意,此菜单还包含来自使用相同语音触发器的其他 APK的活动/服务。
您可以在GDK文档的Voice Input页面找到更多详细信息。“
答案 2 :(得分:0)
您是否在询问是否可以向Glass添加语音命令以触发您的应用?如果是这样 - 绝对。事实上,这是在GDK上启动应用程序的建议方法。
有关详细信息,请参阅https://developers.google.com/glass/develop/gdk/input/voice#launching_glassware,但基本上您将
res/values/strings.xml
并提示res/xml/<my_voice_trigger>.xml
中创建一个资源,该资源使用字符串值作为关键字并设置输入提示(另外,似乎动词是最好的语音触发器 - 它们使用“ok,glass”菜单项更自然地流动。)
答案 3 :(得分:0)
现在你可以使用framework apis在你的活动中显示一个好的玻璃菜单, 查看有关上下文语音命令的文档
https://developers.google.com/glass/develop/gdk/voice#contextual_voice_commands