/Android-Accessibility-EasyAccessibility

一个简单高效的无障碍服务工具

Primary LanguageKotlin

EasyAccessibility

一个简单高效的无障碍服务工具

如何使用该库

在项目根目录下 build.gradle 文件中 添加

maven { url 'https://jitpack.io' }

如下:

allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

在 app 目录下build.gradle 文件中 添加

如下

dependencies {
	        implementation 'com.github.OneZeroYang:EasyAccessibility:1.1.0'
	}

如何初始化

1.在AndroidManifest.xml中声明无障碍服务

<service
            android:name="com.zerocode.easyaccessibility.EasyAccessibilityService"
            android:description="@string/accessibility_describe"
            android:label="Service Demo"
            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/accessibility_config" />
            >

        </service>

2.在res下创建xml文件夹,新建accessibility_config.xml ,内容如下:

<?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
    android:accessibilityEventTypes="typeWindowStateChanged"
    android:accessibilityFeedbackType="feedbackAllMask"
    android:accessibilityFlags="flagIncludeNotImportantViews|flagReportViewIds|flagRetrieveInteractiveWindows|flagRequestEnhancedWebAccessibility"
    android:canRetrieveWindowContent="true"
    android:description="@string/accessibility_describe"
    android:notificationTimeout="10"
    android:canPerformGestures="true"
    android:canRequestEnhancedWebAccessibility="true"
    android:settingsActivity=".MainActivity"
    android:summary="基础导航/视图检索操作"/>

如何使用api

1.查找控件

通过文本查找

    EasyApi.withTxt("登录")

通过id查找

    EasyApi.withId("/login")

通过Desc查找

    EasyApi.withDesc("登录")

2.基于控件的触发事件

单击事件

    EasyApi.withDesc("登录").click()

长按事件

    EasyApi.withDesc("登录").longClick()

输入文字

    EasyApi.withId("/userName").inputText("123456")

3.全局事件

返回

    EasyApi.back()

返回桌面

    EasyApi.backHome()

电源菜单

    EasyApi.powerDialog()

通知栏

    EasyApi.showNotificationBar()

最近任务

    EasyApi.workList()

4.全局手势

通过坐标点击 点击坐标0,0

    EasyApi.click(0,0)

通过坐标长按

    EasyApi.longClick(0,0)

两点之间的滑动

    EasyApi.scroll(0,0,10,10)

上滑

    EasyApi.scrollUp()

下滑

    EasyApi.scrollDown()

左滑

    EasyApi.scrollLeft()

右滑

    EasyApi.右滑()

其他api请下载源码自行查看 作者邮箱 102245912@qq.com