如何使用Google Assist API实施助理

H.N*_*yen 6 android android-6.0-marshmallow google-assist-api

我一直在查看并阅读Google Now on Tap(来自http://developer.android.com/training/articles/assistant.html).

从该文章中发现,Now on Tap基于与Marshmallow捆绑在一起的Google Assist API非常有趣,我们似乎可以开发自己的助手(Google在文章中使用的术语来指代像Now on Tap这样的应用程序)使用API​​.

然而,提到的文章只有非常简短讨论如何使用辅助API和我找不到任何关于如何使用它,即使花了几天在互联网上搜索之后开发自定义助理的任何其他信息.没有文档也没有例子.

我想知道你们中是否有人有使用Assist API的经验吗?任何帮助赞赏.

谢谢

lif*_*ger 9

您可以使用启动Android 6.0的Assist API,像Google Now on Tap一样实现个人助理.官方开发人员(http://developer.android.com/training/articles/assistant.html)指南准确说明了您应该如何实现它.

一些开发人员可能希望实施自己的助手.如图2所示,Android用户可以选择活动助手应用程序.助手应用必须提供VoiceInteractionSessionService和VoiceInteractionSession的实现,如本例所示,它需要BIND_VOICE_INTERACTION权限.然后,它可以接收在onHandleAssist()中表示为AssistStructure实例的文本和视图层次结构.助手通过onHandleScreenshot()接收屏幕截图.

Commonsware有四个演示用于基本的Assist API使用.TapOffNow(https://github.com/commonsguy/cw-omnibus/tree/master/Assist/TapOffNow)应足以让您入门.

您不必使用onHandleScreenshot()来获取相关的文本数据,onHandleAssist()中的AssistStructure将为您提供一个根ViewNode,它通常包含您在屏幕上可以看到的所有内容.

您可能还需要实现某些类型的函数来快速定位您要关注的特定ViewNode,并使用对此根ViewNode的子项进行递归搜索.

  • 我已经尝试了示例应用程序,发现它们只有在我们打开应用程序并按住主页按钮一段时间后才能工作。我想知道我们是否可以采取任何措施使其完全取代 Google Now on Tap。例如,我们可以将其设置为默认助手,然后每当用户在任何屏幕上按住主页按钮时,该应用程序都会弹出吗?根据 Google 的说法,这似乎是可能的(“Android 用户可以选择活动的助手应用程序”),但是经过大量搜索后,我找不到方法…… PS。sr 我没有 15 个声望点,所以我对你的支持是不可见的 :( (2认同)