From f43cdfb850eef02d843bb5048edaa11f8ad0d090 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=8A=A0=E8=84=9A=E6=9C=AC=E4=BA=BA?= <742374184@qq.com> Date: Mon, 10 Jul 2023 10:31:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=97=A0=E9=9A=9C=E7=A2=8D?= =?UTF-8?q?=E5=BC=80=E5=90=AF=E5=85=B3=E9=97=AD=E5=9B=9E=E8=B0=83=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../accessibility/AccessibilityService.kt | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/autojs/autojs/core/accessibility/AccessibilityService.kt b/app/src/main/java/org/autojs/autojs/core/accessibility/AccessibilityService.kt index 74c55987..410fbab6 100644 --- a/app/src/main/java/org/autojs/autojs/core/accessibility/AccessibilityService.kt +++ b/app/src/main/java/org/autojs/autojs/core/accessibility/AccessibilityService.kt @@ -16,17 +16,22 @@ import java.util.concurrent.Executors import java.util.concurrent.TimeUnit import java.util.concurrent.locks.ReentrantLock +interface AccessibilityServiceCallback { + fun onServiceConnected() + fun onServiceDisconnected() +} + /** * Created by Stardust on 2017/5/2. */ open class AccessibilityService : android.accessibilityservice.AccessibilityService() { - val onKeyObserver = OnKeyListener.Observer() val keyInterrupterObserver = KeyInterceptor.Observer() var fastRootInActiveWindow: AccessibilityNodeInfo? = null - var bridge: AccessibilityBridge? = null + private var callback: AccessibilityServiceCallback? = null + private val gestureEventDispatcher = EventDispatcher() private val eventExecutor by lazy { Executors.newSingleThreadExecutor() } @@ -88,6 +93,7 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ instance = null bridge = null eventExecutor.shutdownNow() + callback?.onServiceDisconnected() super.onDestroy() } @@ -104,7 +110,7 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ } } } - + callback?.onServiceConnected() super.onServiceConnected() LOCK.lock() @@ -114,6 +120,10 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ // FIXME: 2017/2/12 有时在无障碍中开启服务后这里不会调用服务也不会运行,安卓的BUG??? } + fun setCallback(callback: AccessibilityServiceCallback) { + this.callback = callback + } + companion object { private const val TAG = "AccessibilityService" @@ -182,11 +192,7 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ } interface GestureListener { - fun onGesture(gestureId: Int) - } - } - }