mirror of
https://github.com/YTVanced/VancedMicroG
synced 2024-12-05 01:07:27 +00:00
EN: Only ask for confirmation if build comes with confirm ui
This commit is contained in:
parent
568c015be7
commit
bc0b08c2b6
1 changed files with 25 additions and 8 deletions
|
@ -61,17 +61,34 @@ class ExposureNotificationServiceImpl(private val context: Context, private val
|
||||||
return pi
|
return pi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun hasConfirmActivity(): Boolean {
|
||||||
|
val intent = Intent(ACTION_CONFIRM)
|
||||||
|
intent.`package` = context.packageName
|
||||||
|
return try {
|
||||||
|
context.packageManager.resolveActivity(intent, 0) != null
|
||||||
|
} catch (e: Exception) {
|
||||||
|
false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private suspend fun confirmPermission(permission: String): Status {
|
private suspend fun confirmPermission(permission: String): Status {
|
||||||
return ExposureDatabase.with(context) { database ->
|
return ExposureDatabase.with(context) { database ->
|
||||||
if (tempGrantedPermissions.contains(packageName to permission)) {
|
when {
|
||||||
|
tempGrantedPermissions.contains(packageName to permission) -> {
|
||||||
database.grantPermission(packageName, PackageUtils.firstSignatureDigest(context, packageName)!!, permission)
|
database.grantPermission(packageName, PackageUtils.firstSignatureDigest(context, packageName)!!, permission)
|
||||||
tempGrantedPermissions.remove(packageName to permission)
|
tempGrantedPermissions.remove(packageName to permission)
|
||||||
Status.SUCCESS
|
Status.SUCCESS
|
||||||
} else if (!database.hasPermission(packageName, PackageUtils.firstSignatureDigest(context, packageName)!!, permission)) {
|
}
|
||||||
Status(RESOLUTION_REQUIRED, "Permission EN#$permission required.", pendingConfirm(permission))
|
database.hasPermission(packageName, PackageUtils.firstSignatureDigest(context, packageName)!!, permission) -> {
|
||||||
} else {
|
|
||||||
Status.SUCCESS
|
Status.SUCCESS
|
||||||
}
|
}
|
||||||
|
!hasConfirmActivity() -> {
|
||||||
|
Status.SUCCESS
|
||||||
|
}
|
||||||
|
else -> {
|
||||||
|
Status(RESOLUTION_REQUIRED, "Permission EN#$permission required.", pendingConfirm(permission))
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue