diff --git a/src/com/android/settings/vpn2/AppManagementFragment.java b/src/com/android/settings/vpn2/AppManagementFragment.java index 5f4644614c7..8e3d9bb4c18 100644 --- a/src/com/android/settings/vpn2/AppManagementFragment.java +++ b/src/com/android/settings/vpn2/AppManagementFragment.java @@ -15,6 +15,7 @@ */ package com.android.settings.vpn2; +import static android.app.AppOpsManager.OP_ACTIVATE_PLATFORM_VPN; import static android.app.AppOpsManager.OP_ACTIVATE_VPN; import android.annotation.NonNull; @@ -312,7 +313,7 @@ public class AppManagementFragment extends SettingsPreferenceFragment final AppOpsManager service = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE); final List ops = service.getOpsForPackage(application.uid, - application.packageName, new int[]{OP_ACTIVATE_VPN}); + application.packageName, new int[]{OP_ACTIVATE_VPN, OP_ACTIVATE_PLATFORM_VPN}); return !ArrayUtils.isEmpty(ops); } diff --git a/src/com/android/settings/vpn2/VpnSettings.java b/src/com/android/settings/vpn2/VpnSettings.java index 83cdf71eeca..8a2b465d7f2 100644 --- a/src/com/android/settings/vpn2/VpnSettings.java +++ b/src/com/android/settings/vpn2/VpnSettings.java @@ -16,6 +16,7 @@ package com.android.settings.vpn2; +import static android.app.AppOpsManager.OP_ACTIVATE_PLATFORM_VPN; import static android.app.AppOpsManager.OP_ACTIVATE_VPN; import android.annotation.UiThread; @@ -522,7 +523,8 @@ public class VpnSettings extends RestrictedSettingsFragment implements // Fetch VPN-enabled apps from AppOps. AppOpsManager aom = (AppOpsManager) context.getSystemService(Context.APP_OPS_SERVICE); - List apps = aom.getPackagesForOps(new int[] {OP_ACTIVATE_VPN}); + List apps = + aom.getPackagesForOps(new int[] {OP_ACTIVATE_VPN, OP_ACTIVATE_PLATFORM_VPN}); if (apps != null) { for (AppOpsManager.PackageOps pkg : apps) { int userId = UserHandle.getUserId(pkg.getUid()); @@ -533,8 +535,8 @@ public class VpnSettings extends RestrictedSettingsFragment implements // Look for a MODE_ALLOWED permission to activate VPN. boolean allowed = false; for (AppOpsManager.OpEntry op : pkg.getOps()) { - if (op.getOp() == OP_ACTIVATE_VPN && - op.getMode() == AppOpsManager.MODE_ALLOWED) { + if ((op.getOp() == OP_ACTIVATE_VPN || op.getOp() == OP_ACTIVATE_PLATFORM_VPN) + && op.getMode() == AppOpsManager.MODE_ALLOWED) { allowed = true; } }