我正在尝试设置我的应用程序以响应 system-provided voice actions 之一.
按照上面提到的链接,我应该在我的 android wear apk 中声明一个具有非常具体的 intent 过滤器的 Activity 。
在我的示例应用程序中,我尝试“ Hook ”“设置计时器”语音操作,因此我的 AndroidManifest.xml
具有以下代码:
<activity android:name=".wear.MyActivity2">
<intent-filter>
<action android:name="android.provider.AlarmClock.ACTION_SET_TIMER" />
</intent-filter>
</activity>
然后我在我的手机中 bundle 、签名并安装了该应用程序。然后我验证了该应用程序已安装在我的手机和 watch (LG G Watch) 中。
在确认一切顺利后,我尝试查看我的应用程序是否被列为“Android Wear”应用程序中“设置计时器”语音操作的“选项”。 => 它没有。
然后我尝试重新启动手机和 watch ,最后我尝试了“Android Wear”->“设置”菜单中显示的“刷新应用程序”按钮。
没有任何改变。看来我无法让“Android Wear”应用程序知道我的应用程序,以便它监听所需的语音操作并采取相应的行动。
注意事项:
- 我还尝试了其他语音操作(即使是链接中作为示例提供的那个 - 请记下来)
- 我尝试了不同的重启/重新同步排列
- 我仔细检查了 android wear 应用程序是否是最新编译的
- 手机和穿戴应用共享同一个包名
- Activity 除了显示 hello world 布局之外什么都不做...
最佳答案
改为使用此 Intent 过滤器:
<intent-filter>
<action android:name="android.intent.action.SET_TIMER"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
关于android - 在 Android Wear 上添加语音功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24614639/