AccessibilityService使用情况

来源:互联网 发布:西安交通大学软件学院 编辑:程序博客网 时间:2024/04/19 17:57

1:使用AncillaryService首先先继承AccessibilityService服务


2:其次在manifest配置服务

<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" />  //权限打开

 <service
            android:name=".AncillaryService"   //继承与AccessibilityService的服务
            android:enabled="true"
            android:exported="true"
            android:label="@string/app_name"    //在设置里显示的服务名称(引用)
            android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">   //权限声明

            <meta-data
                android:name="android.accessibilityservice"
                android:resource="@xml/accessibility" />  //配置信息引用资源

            <intent-filter> //过滤器
                <action android:name="android.accessibilityservice.AccessibilityService" />
            </intent-filter>

        </service>

3:accessibility文件,这个在res文件夹下建xml文件夹,在建accessibility文件

<?xml version="1.0" encoding="utf-8"?><accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"    android:accessibilityEventTypes="typeNotificationStateChanged|typeWindowStateChanged"  //接受那些事件    android:accessibilityFeedbackType="feedbackGeneric"    android:accessibilityFlags=""    android:canRetrieveWindowContent="true"    android:description="@string/app_name"    android:notificationTimeout="100"    android:packageNames="com.tencent.mm" />  <!--微信的包名-->    <!--    <accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"    android:accessibilityEventTypes="typeNotificationStateChanged|typeWindowStateChanged"    android:accessibilityFeedbackType="feedbackGeneric"    android:accessibilityFlags=""    android:canRetrieveWindowContent="true"    android:description="@string/app_name"    android:notificationTimeout="100"    android:packageNames="com.tencent.mobileqq" />   -->  <!--qq包名-->    <!--    <accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"    android:accessibilityEventTypes="typeNotificationStateChanged|typeWindowStateChanged"    android:accessibilityFeedbackType="feedbackGeneric"    android:accessibilityFlags=""    android:canRetrieveWindowContent="true"    android:description="@string/app_name"    android:notificationTimeout="100"    android:packageNames="com.eg.android.AlipayGphone" />   -->  <!--支付宝包名-->

4:在使用时,在设置里打开次服务



5:

        

1、android:accessibilityEventTypes="typeAllMask"
看属性名也差不多可以明白,这个是用来设置响应事件的类型,typeAllMask当然就是响应所有类型的事件了。当然还有单击、长按、滑动等。

2、android:accessibilityFeedbackType="feedbackSpoken"
设置回馈给用户的方式,有语音播出和振动。可以配置一些TTS引擎,让它实现发音。

3、android:notificationTimeout="100"
响应时间的设置就不用多说了


6:点击事件:performAction(AccessibilityNodeInfo.ACTION_CLICK)


原创粉丝点击