为什么XE16中的ok玻璃菜单中缺少我的声音命令?

时间:2014-04-16 02:16:02

标签: google-glass google-gdk

我在ok玻璃菜单上使用语音命令启动了一个Glassware。它在XE12中运行良好,但在XE16中它没有显示在主菜单中。

以下是AndroidManifest.xml显示我的语音命令配置的片段:

<service
    android:name="com.mimming.sugarglider.MapDisplayService"
    android:label="@string/app_name"
    android:enabled="true">
    <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/show_map" />
</service>

以下是show_map.xml的内容,它定义了我的语音命令:

<trigger keyword="@string/show_me_a_map">
    <constraints network="true" />
</trigger>

怎么了?

1 个答案:

答案 0 :(得分:49)

回答我自己的问题,因为这似乎影响了很多开发人员。

语音命令在XE16中有所改变。 Unlisted voice commands与配置中指定的一样,现在需要额外的权限。将此添加到您的清单:

<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT" />

当您准备好发布Glassware时,必须使用内置的静态语音命令。这种命令的XML看起来更像是这样:

<?xml version="1.0" encoding="utf-8"?>
<trigger command="START_A_RUN" />

其中START_A_RUN是来自this list的其中一项。如果列出的命令都不适合您的Glassware,则应request the addition of a voice command。这可能需要一些时间,所以最好尽早完成。