6.0.3 - 新增使用修改安全设置权限自启无障碍 修复toast/socket导致崩溃 资源英文补全 支持64位系统 部分插件及工具版本更新
This commit is contained in:
@@ -1,14 +1,11 @@
|
||||
package com.stardust.view.accessibility
|
||||
|
||||
import android.os.Build
|
||||
import android.util.Log
|
||||
import android.view.KeyEvent
|
||||
import android.view.accessibility.AccessibilityEvent
|
||||
import android.view.accessibility.AccessibilityNodeInfo
|
||||
import com.stardust.event.EventDispatcher
|
||||
|
||||
import java.util.HashSet
|
||||
import java.util.TreeMap
|
||||
import java.util.*
|
||||
import java.util.concurrent.ExecutorService
|
||||
import java.util.concurrent.Executors
|
||||
import java.util.concurrent.TimeUnit
|
||||
@@ -32,11 +29,11 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ
|
||||
private var mFastRootInActiveWindow: AccessibilityNodeInfo? = null
|
||||
private val eventExecutor: ExecutorService
|
||||
get() {
|
||||
return mEventExecutor ?: {
|
||||
return mEventExecutor ?: run {
|
||||
val executor = Executors.newSingleThreadExecutor()
|
||||
mEventExecutor = executor
|
||||
executor
|
||||
}()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onAccessibilityEvent(event: AccessibilityEvent) {
|
||||
@@ -140,7 +137,7 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ
|
||||
}
|
||||
|
||||
fun disable(): Boolean {
|
||||
if (instance != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||
if (instance != null) {
|
||||
instance!!.disableSelf()
|
||||
return true
|
||||
}
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
package com.stardust.view.accessibility
|
||||
|
||||
import android.accessibilityservice.AccessibilityService
|
||||
import android.content.ComponentName
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.provider.Settings
|
||||
import android.text.TextUtils
|
||||
|
||||
import java.util.Locale
|
||||
|
||||
|
||||
/**
|
||||
* Created by Stardust on 2017/1/26.
|
||||
*/
|
||||
|
||||
object AccessibilityServiceUtils {
|
||||
|
||||
fun goToAccessibilitySetting(context: Context) {
|
||||
context.startActivity(Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK))
|
||||
}
|
||||
|
||||
fun isAccessibilityServiceEnabled(context: Context, accessibilityService: Class<out AccessibilityService>): Boolean {
|
||||
val expectedComponentName = ComponentName(context, accessibilityService)
|
||||
|
||||
val enabledServicesSetting = Settings.Secure.getString(context.contentResolver, Settings.Secure.ENABLED_ACCESSIBILITY_SERVICES)
|
||||
?: return false
|
||||
|
||||
val colonSplitter = TextUtils.SimpleStringSplitter(':')
|
||||
colonSplitter.setString(enabledServicesSetting)
|
||||
|
||||
while (colonSplitter.hasNext()) {
|
||||
val componentNameString = colonSplitter.next()
|
||||
val enabledService = ComponentName.unflattenFromString(componentNameString)
|
||||
|
||||
if (enabledService != null && enabledService == expectedComponentName)
|
||||
return true
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user