Treat mode_default as denied for install_unknown_apps
Test: atest SettingsRoboTests Bug: 123700348 Change-Id: Ieeb6456854cc3d0faa0e9c407accd94f56a25813 Merged-In: Ieeb6456854cc3d0faa0e9c407accd94f56a25813
This commit is contained in:
@@ -94,8 +94,6 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
|
|||||||
final InstallAppsState appState = new InstallAppsState();
|
final InstallAppsState appState = new InstallAppsState();
|
||||||
appState.permissionRequested = hasRequestedAppOpPermission(
|
appState.permissionRequested = hasRequestedAppOpPermission(
|
||||||
Manifest.permission.REQUEST_INSTALL_PACKAGES, packageName);
|
Manifest.permission.REQUEST_INSTALL_PACKAGES, packageName);
|
||||||
appState.permissionGranted = hasPermission(Manifest.permission.REQUEST_INSTALL_PACKAGES,
|
|
||||||
uid);
|
|
||||||
appState.appOpMode = getAppOpMode(AppOpsManager.OP_REQUEST_INSTALL_PACKAGES, uid,
|
appState.appOpMode = getAppOpMode(AppOpsManager.OP_REQUEST_INSTALL_PACKAGES, uid,
|
||||||
packageName);
|
packageName);
|
||||||
return appState;
|
return appState;
|
||||||
@@ -106,7 +104,6 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
|
|||||||
*/
|
*/
|
||||||
public static class InstallAppsState {
|
public static class InstallAppsState {
|
||||||
boolean permissionRequested;
|
boolean permissionRequested;
|
||||||
boolean permissionGranted;
|
|
||||||
int appOpMode;
|
int appOpMode;
|
||||||
|
|
||||||
public InstallAppsState() {
|
public InstallAppsState() {
|
||||||
@@ -114,11 +111,7 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean canInstallApps() {
|
public boolean canInstallApps() {
|
||||||
if (appOpMode == AppOpsManager.MODE_DEFAULT) {
|
return appOpMode == AppOpsManager.MODE_ALLOWED;
|
||||||
return permissionGranted;
|
|
||||||
} else {
|
|
||||||
return appOpMode == AppOpsManager.MODE_ALLOWED;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean isPotentialAppSource() {
|
public boolean isPotentialAppSource() {
|
||||||
@@ -127,8 +120,8 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
StringBuilder sb = new StringBuilder("[permissionGranted: " + permissionGranted);
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append(", permissionRequested: " + permissionRequested);
|
sb.append("[permissionRequested: " + permissionRequested);
|
||||||
sb.append(", appOpMode: " + appOpMode);
|
sb.append(", appOpMode: " + appOpMode);
|
||||||
sb.append("]");
|
sb.append("]");
|
||||||
return sb.toString();
|
return sb.toString();
|
||||||
|
@@ -38,8 +38,10 @@ public class AppStateInstallAppsBridgeTest {
|
|||||||
.InstallAppsState();
|
.InstallAppsState();
|
||||||
assertThat(appState.canInstallApps()).isFalse();
|
assertThat(appState.canInstallApps()).isFalse();
|
||||||
|
|
||||||
appState.permissionGranted = true;
|
|
||||||
appState.permissionRequested = true;
|
appState.permissionRequested = true;
|
||||||
|
assertThat(appState.canInstallApps()).isFalse();
|
||||||
|
|
||||||
|
appState.appOpMode = AppOpsManager.MODE_ALLOWED;
|
||||||
assertThat(appState.canInstallApps()).isTrue();
|
assertThat(appState.canInstallApps()).isTrue();
|
||||||
|
|
||||||
appState.appOpMode = AppOpsManager.MODE_ERRORED;
|
appState.appOpMode = AppOpsManager.MODE_ERRORED;
|
||||||
|
Reference in New Issue
Block a user