Wasted/app/src/main/java/me/lucky/wasted/DeviceAdminReceiver.kt

31 lines
1023 B
Kotlin
Raw Normal View History

2021-11-19 17:37:36 -07:00
package me.lucky.wasted
import android.app.admin.DeviceAdminReceiver
import android.content.Context
import android.content.Intent
import android.os.Build
import android.os.UserHandle
import androidx.annotation.RequiresApi
2021-11-19 17:37:36 -07:00
class DeviceAdminReceiver : DeviceAdminReceiver() {
@RequiresApi(Build.VERSION_CODES.O)
override fun onPasswordFailed(context: Context, intent: Intent, user: UserHandle) {
super.onPasswordFailed(context, intent, user)
onPasswordFailedInternal(context)
}
override fun onPasswordFailed(context: Context, intent: Intent) {
super.onPasswordFailed(context, intent)
onPasswordFailedInternal(context)
}
private fun onPasswordFailedInternal(ctx: Context) {
val prefs = Preferences(ctx)
if (!prefs.isServiceEnabled || prefs.maxFailedPasswordAttempts == 0) return
val admin = DeviceAdminManager(ctx)
if (admin.getCurrentFailedPasswordAttempts() >= prefs.maxFailedPasswordAttempts)
admin.wipeData()
}
}