Android - 防止TalkBack读取应用程序名称和当前方向

ASi*_*gal 7 android accessibility talkback

问题是当我的活动启动时,我正在使用TTS读取长字符串消息,但是TalkBack会自动读取其中间的应用程序名称并剪切长字符串并且非常烦人.

我想在每次启动活动时禁用TalkBack读取应用程序名称.删除其android:label属性不是一个可行的解决方案,因为应用程序是由其他人控制的,我无法控制它.

那么,是否有任何API可以阻止TalkBack功能在应用程序启动时读取应用程序名称?

任何帮助将受到高度赞赏.

非常感谢提前.

此致,阿肖克

Sat*_*mar 7

解决方案是覆盖Activity中的dispatchPopulateAccessibilityEvent()以返回true.这将阻止Talkback宣布活动标签.


小智 7

您应该将其添加到 AndroidManifest.xml

<activity
            android:name="com.mobile.myapp.test"
            android:label="About"
            android:screenOrientation="portrait" />
Run Code Online (Sandbox Code Playgroud)

如果您不希望 TalkBack 读取活动名称,请将 android:label 留空。

  • 将标签留空时,将使用应用程序名称。 (2认同)

Com*_*are 2

那么,是否可以调用任何 API 来阻止 TalkBack 功能在应用程序启动时读取应用程序名称?

据我所知,情况并非如此。

问题是,当我的 Activity 启动时,我使用 TTS 读取长字符串消息,但 TalkBack 会自动读取中间的应用程序名称并剪切长字符串,这非常烦人。

然后稍微延迟一下“长字符串消息”,以便 TalkBack 有时间进行标准公告。