|
@@ -5,6 +5,7 @@ import android.annotation.SuppressLint
|
|
|
import android.content.Context
|
|
import android.content.Context
|
|
|
import android.graphics.PixelFormat
|
|
import android.graphics.PixelFormat
|
|
|
import android.os.Build
|
|
import android.os.Build
|
|
|
|
|
+import android.text.InputType
|
|
|
import android.util.DisplayMetrics
|
|
import android.util.DisplayMetrics
|
|
|
import android.util.Log
|
|
import android.util.Log
|
|
|
import android.view.Gravity
|
|
import android.view.Gravity
|
|
@@ -17,6 +18,7 @@ import android.view.View.VISIBLE
|
|
|
import android.view.WindowManager
|
|
import android.view.WindowManager
|
|
|
import android.view.accessibility.AccessibilityEvent
|
|
import android.view.accessibility.AccessibilityEvent
|
|
|
import android.widget.CompoundButton
|
|
import android.widget.CompoundButton
|
|
|
|
|
+import android.widget.EditText
|
|
|
import android.widget.FrameLayout
|
|
import android.widget.FrameLayout
|
|
|
import androidx.annotation.MenuRes
|
|
import androidx.annotation.MenuRes
|
|
|
import androidx.appcompat.widget.PopupMenu
|
|
import androidx.appcompat.widget.PopupMenu
|
|
@@ -44,6 +46,7 @@ import com.example.modifier.utils.restartSelf
|
|
|
import com.example.modifier.utils.setBatteryLevel
|
|
import com.example.modifier.utils.setBatteryLevel
|
|
|
import com.example.modifier.utils.syncTime
|
|
import com.example.modifier.utils.syncTime
|
|
|
import com.google.android.material.color.DynamicColors
|
|
import com.google.android.material.color.DynamicColors
|
|
|
|
|
+import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
|
|
import kotlinx.coroutines.CoroutineScope
|
|
import kotlinx.coroutines.CoroutineScope
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
import kotlinx.coroutines.Dispatchers
|
|
|
import kotlinx.coroutines.delay
|
|
import kotlinx.coroutines.delay
|
|
@@ -63,10 +66,6 @@ class ModifierService : AccessibilityService() {
|
|
|
companion object {
|
|
companion object {
|
|
|
private const val TAG = "$baseTag/Service"
|
|
private const val TAG = "$baseTag/Service"
|
|
|
const val NAME: String = BuildConfig.APPLICATION_ID + ".service.ModifierService"
|
|
const val NAME: String = BuildConfig.APPLICATION_ID + ".service.ModifierService"
|
|
|
-
|
|
|
|
|
- @JvmStatic
|
|
|
|
|
- var instance: ModifierService? = null
|
|
|
|
|
- private set
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private lateinit var binding: FloatingWindowBinding
|
|
private lateinit var binding: FloatingWindowBinding
|
|
@@ -87,6 +86,7 @@ class ModifierService : AccessibilityService() {
|
|
|
}
|
|
}
|
|
|
private lateinit var socketClient: SocketClient
|
|
private lateinit var socketClient: SocketClient
|
|
|
private lateinit var taskRunner: TaskRunner
|
|
private lateinit var taskRunner: TaskRunner
|
|
|
|
|
+ private lateinit var uiContext: Context
|
|
|
|
|
|
|
|
override fun onAccessibilityEvent(event: AccessibilityEvent) {}
|
|
override fun onAccessibilityEvent(event: AccessibilityEvent) {}
|
|
|
|
|
|
|
@@ -98,7 +98,6 @@ class ModifierService : AccessibilityService() {
|
|
|
override fun onServiceConnected() {
|
|
override fun onServiceConnected() {
|
|
|
super.onServiceConnected()
|
|
super.onServiceConnected()
|
|
|
Log.i(TAG, "onServiceConnected")
|
|
Log.i(TAG, "onServiceConnected")
|
|
|
- instance = this
|
|
|
|
|
|
|
|
|
|
val displayMetrics = DisplayMetrics()
|
|
val displayMetrics = DisplayMetrics()
|
|
|
val windowManager = getSystemService(WINDOW_SERVICE) as WindowManager
|
|
val windowManager = getSystemService(WINDOW_SERVICE) as WindowManager
|
|
@@ -118,8 +117,8 @@ class ModifierService : AccessibilityService() {
|
|
|
layoutParams.y = 800
|
|
layoutParams.y = 800
|
|
|
layoutParams.gravity = Gravity.START or Gravity.TOP
|
|
layoutParams.gravity = Gravity.START or Gravity.TOP
|
|
|
|
|
|
|
|
- val newContext = DynamicColors.wrapContextIfAvailable(applicationContext, R.style.AppTheme)
|
|
|
|
|
- val inflater = LayoutInflater.from(newContext)
|
|
|
|
|
|
|
+ uiContext = DynamicColors.wrapContextIfAvailable(applicationContext, R.style.AppTheme)
|
|
|
|
|
+ val inflater = LayoutInflater.from(uiContext)
|
|
|
binding = FloatingWindowBinding.inflate(inflater, mLayout, true)
|
|
binding = FloatingWindowBinding.inflate(inflater, mLayout, true)
|
|
|
binding.tvVersion.text = "v${BuildConfig.VERSION_CODE}"
|
|
binding.tvVersion.text = "v${BuildConfig.VERSION_CODE}"
|
|
|
windowManager.addView(mLayout, layoutParams)
|
|
windowManager.addView(mLayout, layoutParams)
|
|
@@ -343,7 +342,7 @@ class ModifierService : AccessibilityService() {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
binding.btnMore.setOnClickListener {
|
|
binding.btnMore.setOnClickListener {
|
|
|
- showMenu(newContext, binding.btnMore, R.menu.more)
|
|
|
|
|
|
|
+ showMenu(uiContext, binding.btnMore, R.menu.more)
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -420,12 +419,10 @@ class ModifierService : AccessibilityService() {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
private suspend fun storeNumbers() {
|
|
private suspend fun storeNumbers() {
|
|
|
-// repeat(100) {
|
|
|
|
|
-// requestNumber(reset = true, fresh = it > 0)
|
|
|
|
|
-// delay(5000)
|
|
|
|
|
-// }
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ withContext(Dispatchers.Main) {
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|