代码之家  ›  专栏  ›  技术社区  ›  timr

带浓缩咖啡的仪器易用性服务

  •  0
  • timr  · 技术社区  · 4 年前

    我在试着给一个 AccessibilityService .
    我的想法是在假人上做一些动作 Activity .

    然而我注意到我的 可访问性服务 当我用假人开始我的浓缩咖啡测试时就会被禁用 活动 .


    我试着 乱劈 通过组装APK和自己测试APK来解决这个问题。

    ./gradlew assembleDebug
    ./gradlew assembleDebugAndroidTest
    
    adb install "app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk"
    adb install "app/build/outputs/apk/debug/app-debug.apk"
    

    使用

    adb shell settings put secure enabled_accessibility_services <package-name>/<AccessibilityService-packagename>
    

    然后开始测试

    adb shell am instrument -w -m <package-name>.test/androidx.test.runner.AndroidJUnitRunner
    

    我放了一个 Toast 在我的 AccessibilityService#onServiceConnected , AccessibilityService#onInterrupt 和 AccessibilityService#onUnbind 像这样的功能。

    override fun onServiceConnected() {
        Toast.makeText(this, "Enabled!", Toast.LENGTH_SHORT).show()
    }
    

    我能清楚地看到 启用 干杯 然而,我的其他人 干杯 是可见的,但一旦测试启动,服务就会被禁用,正如我在系统设置应用程序中看到的那样。

    enter image description here

    这是故意的行为吗?
    如果是的话,这可以被禁用吗?
    或者有什么其他替代方法来测试仪器 Accessibility Service ?

    提前谢谢

    0 回复  |  直到 4 年前