绕过 Android TalkBack 的 Android 无障碍服务

标签 android text-to-speech talkback accessibilityservice

我已经为我的应用编写了自己的AccessibilityService。它在内部使用 TextToSpeech 为浏览我的应用程序的用户提供语音反馈。当 TalkBackMyAccessibilityService 都打开时,我会从我的应用程序获得语音反馈,然后是 TalkBack 的反馈。

因为我的应用程序拥有无障碍服务,有什么方法可以停止我的应用程序的 TalkBack 吗?

最佳答案

我正在处理这个问题,我设法解决了这个问题。

您必须让您的服务负责您应用的可访问性,为此您必须在 list 中添加:

<service android:name="communication_interfaces.MyAccessibilityService"
        android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
        <intent-filter>
            <action android:name="android.accessibilityservice.AccessibilityService" />
        </intent-filter>
        <meta-data android:name="android.accessibilityservice"
                   android:resource="@xml/serviceconfig" />
    </service>

then in serviceconfig

    <?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
     android:accessibilityEventTypes="typeAllMask"
     android:packageNames="com.packagename"
    android:accessibilityFeedbackType="feedbackSpoken|feedbackHaptic|feedbackAudible|feedbackGeneric"
     android:notificationTimeout="100"
     android:settingsActivity="com.myActivity"
     android:canRetrieveWindowContent="true"
     android:description="@string/service_description"/>

就是这样,请记住,如果您正在这样做,则不需要重写 onServiceConnected()。

/*@Override
        protected void onServiceConnected()

关于绕过 Android TalkBack 的 Android 无障碍服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23607594/

相关文章:

c# - SAPI5 讲 XML

multithreading - 如何在python线程中使用pyttsx

Android Talkback 在 TextInputLayout 上的错误通知

android - 关于Android runnable的一个问题

android - 谷歌播放中的所有快照应用程序如何在没有设备根的情况下工作?

Android - Oauth2 - 应用程序的服务器端访问

android - 对讲将大写字母读作一个词,应该单独读

java - 为什么我的 PreferenceScreen 会强制关闭?

android - 在 Android 中接到电话时说出录制的文本

java - 动态更改对讲语言?