Обнаружение длительного нажатия в любой области экрана с помощью AccessibilityServiceAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Обнаружение длительного нажатия в любой области экрана с помощью AccessibilityService

Сообщение Anonymous »

Я пытаюсь обнаружить длительное нажатие в любой области экрана с помощью службы специальных возможностей. Я настроил код, но он не работает. Буду признателен за любую помощь
** Служба специальных возможностей

class RecentAppsAccessibilityService : AccessibilityService() {
private var touchStartTime: Long = 0
private val longPressThreshold = 500
private val lockedApps = mutableSetOf()

private lateinit var database: DatabaseReference
private val appPinCodes = mutableMapOf()

companion object {
private const val TAG = "RecentAppsService"
}

override fun onCreate() {
super.onCreate()
database = FirebaseDatabase.getInstance().reference
fetchLockedPackages()
}

private fun fetchLockedPackages() {
database.child("childApp").addValueEventListener(object : ValueEventListener {
override fun onDataChange(dataSnapshot: DataSnapshot) {
appPinCodes.clear() // Clear previous data

for (childSnapshot in dataSnapshot.children) {
val packageName = childSnapshot.child("package_name").getValue(String::class.java) ?: ""
val pinCode = childSnapshot.child("pin_code").getValue(String::class.java) ?: ""

if (packageName.isNotEmpty() && pinCode.isNotEmpty()) {
appPinCodes[packageName] = pinCode
lockedApps.add(packageName)
}
}
Log.d(TAG, "Updated locked apps: $lockedApps")
}

override fun onCancelled(databaseError: DatabaseError) {
Log.e("FirebaseError", "Error fetching data: ${databaseError.message}")
}
})
}

override fun onAccessibilityEvent(event: AccessibilityEvent) {
when (event.eventType) {
AccessibilityEvent.TYPE_VIEW_LONG_CLICKED -> {
Log.d(TAG, "Long press detected via manual method")
}
}
}

}


// Файл манифеста









































// Конфигурация службы





Подробнее здесь: https://stackoverflow.com/questions/791 ... ityservice
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»