diff --git a/app/src/main/java/foundation/e/parentalcontrol/MainActivity.kt b/app/src/main/java/foundation/e/parentalcontrol/MainActivity.kt index ab67a7d7bd2c2d7c6bcdb275883615c23fa0f244..9e7adeb2d3458566ca7f3dc36794f4f872c153d9 100644 --- a/app/src/main/java/foundation/e/parentalcontrol/MainActivity.kt +++ b/app/src/main/java/foundation/e/parentalcontrol/MainActivity.kt @@ -8,6 +8,7 @@ package foundation.e.parentalcontrol import android.app.admin.DevicePolicyManager +import android.app.admin.DevicePolicyManager.ACTION_PROVISION_MANAGED_PROFILE import android.content.ComponentName import android.content.Context import android.content.Intent @@ -436,9 +437,12 @@ class MainActivity : ComponentActivity() { ) { val devicePolicyManager: DevicePolicyManager = dA.getDevicePolicyManager(mActivity) val activeAdmins = devicePolicyManager.activeAdmins + var showDialog by remember { mutableStateOf(false) } if ( - !activeAdmins.isNullOrEmpty() && !activeAdmins.contains(dA.getAdminName(mActivity)) + (!activeAdmins.isNullOrEmpty() && + !activeAdmins.contains(dA.getAdminName(mActivity))) || + !devicePolicyManager.isProvisioningAllowed(ACTION_PROVISION_MANAGED_PROFILE) ) { AlertDialog( onDismissRequest = { onExitApp() }, @@ -492,10 +496,11 @@ class MainActivity : ComponentActivity() { }, shape = RoundedCornerShape(4.dp) ) + } else { + val userManager = getSystemService(Context.USER_SERVICE) as UserManager + showDialog = userManager.userCount > 1 } - val userManager = getSystemService(Context.USER_SERVICE) as UserManager - var showDialog by remember { mutableStateOf(userManager.userCount > 1) } if (showDialog) { AlertDialog( onDismissRequest = { showDialog = false },