繁体   English   中英

是否可以阻止Google Assistant在Android TV应用中接管RCU麦克风按钮信号?

[英]Is it possible to prevent Google Assistant from taking over RCU mic button signal in an Android TV app?

我正在使用的Android TV(ATV)应用程序具有语音控制功能。 基本上,当用户按下遥控器上的麦克风按钮时,按键事件(由KeyEvent.KEYCODE_SEARCH标识)由应用程序处理,语音识别开始(使用android.speech.SpeechRecognizer ),获得结果(解析语音)并由应用逻辑进一步解析(例如,显示用户搜索结果或执行某些应用内操作)。

一切都按预期的方式进行了上述工作,直到最近,Google Assistant(GA)才引入ATV平台(第一个是Nvidia Shield盒)。 现在,当按下RCU麦克风按钮时,GA叠加层出现,并且麦克风按键事件甚至没有到达应用程序。

在过去的几天里,我进行了一些广泛的研究(文档,Internet,论坛,stackoverflow等),并尝试了一些可能的解决方法,但到目前为止,没有任何效果,并且我无法找到关于该主题的任何明确信息(可能是由于ATV + GA组合在现场是相当新的,并且ATV生态系统没有Android系统那么大)。

到目前为止,我得到的最好的提示是Android TVSpotify应用已完成了什么工作。 当它在没有GA的ATV设备上运行时,其行为基本上与我上述相同; 但是当存在GA时,GA叠加层就会出现,接收经过解析的语音并显示搜索结果,第一行中有Spotify的结果-因此,Spotify应用程序已与GA集成,并且此集成替代了应用内语音控制机制。 这表明,要么没有办法忽略/禁用应用程序内的GA以便接收麦克风按键事件并像往常一样进行语音控制,要么至少这是现在处理语音命令的首选方式。 它还表明,有一些ATV应用程序可以按照我所描述的方式进行语音控制,所以这里的某人可能已经遇到了类似的问题。

我的问题:

  • 是否可以阻止Google Assistant接管RCU麦克风按钮信号?
  • 这样可以吗? (我的意思是“不行”-是否有任何官方准则劝阻此类行为-或至少有正当理由不这样做?)
  • 如果可以,可以做到吗?
  • 如果没有,是否有资源记录如何与GA集成(Spotify for ATV应用程序的方式)?

从您的最后一个问题开始:

如果没有,是否有资源记录如何与GA集成(Spotify for ATV应用程序的方式)?

我在Android开发者博客上写了关于如何集成的文章 Spotify已将其内容目录加入了Google的服务 ,这就是Google Assistant能够如此出色地工作的原因。 如果使应用程序可搜索(在博客中介绍),则可以实现类似的结果。

是否可以阻止Google Assistant接管RCU麦克风按钮信号?

不,目前不行。 Google助手是一个系统应用程序,可以控制麦克风,以在所有应用程序中提供统一的体验。

这样可以吗? (我的意思是“不行”-是否有任何官方准则劝阻此类行为-或至少有正当理由不这样做?)

如果可以,可以做到吗?

您仍然可以享受应用内搜索的体验。 leanback示例中有一个示例。 您将需要在BrowseFragment上设置侦听器并实现SearchFragment 我们知道这可能会造成混淆,应用程序内搜索和Google Assistant搜索之间存在竞争,但是我们正在研究如何改善这一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM