From d3864daebdf69bbdc1a102ce9e214277c292a4a2 Mon Sep 17 00:00:00 2001 From: Suprabh Shukla Date: Mon, 8 Apr 2019 15:23:01 -0700 Subject: [PATCH] Treat mode_default as denied for install_unknown_apps Test: atest SettingsRoboTests Bug: 123700348 Change-Id: Ieeb6456854cc3d0faa0e9c407accd94f56a25813 --- .../settings/applications/AppStateInstallAppsBridge.java | 13 +++---------- .../applications/AppStateInstallAppsBridgeTest.java | 4 +++- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/com/android/settings/applications/AppStateInstallAppsBridge.java b/src/com/android/settings/applications/AppStateInstallAppsBridge.java index f852bcab9a..8a3e5a220d 100644 --- a/src/com/android/settings/applications/AppStateInstallAppsBridge.java +++ b/src/com/android/settings/applications/AppStateInstallAppsBridge.java @@ -93,8 +93,6 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge { final InstallAppsState appState = new InstallAppsState(); appState.permissionRequested = hasRequestedAppOpPermission( Manifest.permission.REQUEST_INSTALL_PACKAGES, packageName); - appState.permissionGranted = hasPermission(Manifest.permission.REQUEST_INSTALL_PACKAGES, - uid); appState.appOpMode = getAppOpMode(AppOpsManager.OP_REQUEST_INSTALL_PACKAGES, uid, packageName); return appState; @@ -105,7 +103,6 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge { */ public static class InstallAppsState { boolean permissionRequested; - boolean permissionGranted; int appOpMode; public InstallAppsState() { @@ -113,11 +110,7 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge { } public boolean canInstallApps() { - if (appOpMode == AppOpsManager.MODE_DEFAULT) { - return permissionGranted; - } else { - return appOpMode == AppOpsManager.MODE_ALLOWED; - } + return appOpMode == AppOpsManager.MODE_ALLOWED; } public boolean isPotentialAppSource() { @@ -126,8 +119,8 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge { @Override public String toString() { - StringBuilder sb = new StringBuilder("[permissionGranted: " + permissionGranted); - sb.append(", permissionRequested: " + permissionRequested); + StringBuilder sb = new StringBuilder(); + sb.append("[permissionRequested: " + permissionRequested); sb.append(", appOpMode: " + appOpMode); sb.append("]"); return sb.toString(); diff --git a/tests/robotests/src/com/android/settings/applications/AppStateInstallAppsBridgeTest.java b/tests/robotests/src/com/android/settings/applications/AppStateInstallAppsBridgeTest.java index 304dfe9735..277f63e574 100644 --- a/tests/robotests/src/com/android/settings/applications/AppStateInstallAppsBridgeTest.java +++ b/tests/robotests/src/com/android/settings/applications/AppStateInstallAppsBridgeTest.java @@ -33,8 +33,10 @@ public class AppStateInstallAppsBridgeTest { new AppStateInstallAppsBridge.InstallAppsState(); assertThat(appState.canInstallApps()).isFalse(); - appState.permissionGranted = true; appState.permissionRequested = true; + assertThat(appState.canInstallApps()).isFalse(); + + appState.appOpMode = AppOpsManager.MODE_ALLOWED; assertThat(appState.canInstallApps()).isTrue(); appState.appOpMode = AppOpsManager.MODE_ERRORED; -- 2.11.0