OSDN Git Service

Treat mode_default as denied for install_unknown_apps
authorChristopher Dombroski <cdombroski@google.com>
Tue, 16 Apr 2019 19:22:56 +0000 (12:22 -0700)
committerJP Sugarbroad <jpsugar@google.com>
Wed, 7 Aug 2019 21:31:36 +0000 (14:31 -0700)
Test: atest SettingsRoboTests
Bug: 123700348
Change-Id: Ieeb6456854cc3d0faa0e9c407accd94f56a25813
Merged-In: Ieeb6456854cc3d0faa0e9c407accd94f56a25813
(cherry picked from commit 4b78bcd5cdff81168b5b08f72764ec9a5c0405c3)

src/com/android/settings/applications/AppStateInstallAppsBridge.java
tests/robotests/src/com/android/settings/applications/AppStateInstallAppsBridgeTest.java

index 5b9ded6..69c0ed5 100644 (file)
@@ -94,8 +94,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;
@@ -106,7 +104,6 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
      */
     public static class InstallAppsState {
         boolean permissionRequested;
-        boolean permissionGranted;
         int appOpMode;
 
         public InstallAppsState() {
@@ -114,11 +111,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() {
@@ -127,8 +120,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();
index fee7a8b..badcbca 100644 (file)
@@ -34,8 +34,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;