0

我正在为盲人用户开发 Android 应用程序。我希望盲人用户使用 TalkBack。我的具体问题是关于当用户完成在键盘上输入文本时出现的 TalkBack 消息(“键盘隐藏”)。我想禁止显示此消息或检测语音消息的结尾。

背景/上下文:TalkBack 的一个常见问题是它的语音消息会破坏您想要在应用程序中执行的任何其他语音合成或语音识别。在大多数情况下,我通过设法抑制 TalkBack 消息来解决此问题,例如,通过将活动标题设置为空字符串。

目前我正在添加使用键盘的功能(附带语音识别选项)。我能够抑制通常出现以宣布键盘外观的 TalkBack 消息。

但是,当用户完成输入文本(在我的应用程序中,通过按键盘上的完成键)时,我无法抑制出现的 TalkBack 消息(“键盘隐藏”)。此特定消息特定于标准 Google 键盘,当然,我希望支持该键盘。(TouchPal 键盘没有相应的消息,但该键盘在 TalkBack 方面存在其他问题。)

如果我能做到以下任何一项,我会很高兴:

  1. 在 (Google) 键盘隐藏时抑制 TalkBack 消息,或者

  2. 检测 TalkBack 消息何时结束。

就上下文而言,(2)是我在我的应用程序中对语音合成所做的。我使用 TextToSpeech.setOnUtteranceProgressListener 来检测合成语音的结束,只有在语音结束后我才开始语音识别或另一个合成语音消息。这很好用。我的应用程序生成的语音不会干扰其他语音,也不会被语音识别识别。另一方面,TalkBack 似乎对正在发生的任何事情一无所知,我欢迎任何关于如何应对这种情况的想法。

非常感谢。

4

1 回答 1

0

你压制不住。而不是将空文本传递给启动活动或视图。这将有助于你的目的。

于 2014-11-17T05:21:01.030 回答