Почему моя голосовая команда отсутствует в меню ok glass в XE16?
У меня была стеклянная посуда, которая запускалась с помощью голосовой команды в меню ok glass. Он отлично работал в 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 ответ
Отвечая на мой собственный вопрос, так как это, похоже, влияет на многих разработчиков.
Голосовые команды немного изменились в XE16. Для голосовых команд, не указанных в списке, например, указанных в вашей конфигурации, теперь требуется дополнительное разрешение. Добавьте это в свой манифест:
<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT" />
Когда вы будете готовы выпустить стеклянную посуду, вы должны использовать встроенную статическую голосовую команду. XML для такой команды будет выглядеть примерно так:
<?xml version="1.0" encoding="utf-8"?>
<trigger command="START_A_RUN" />
куда START_A_RUN
является одним из пунктов этого списка. Если ни одна из перечисленных команд не подходит для вашей стеклянной посуды, вам следует запросить добавление голосовой команды. Это может занять некоторое время, поэтому лучше сделать это как можно раньше.