Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f0789717 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Treat mode_default as denied for install_unknown_apps" into qt-dev

parents dda677cf d3864dae
Loading
Loading
Loading
Loading
+3 −10
Original line number Diff line number Diff line
@@ -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,12 +110,8 @@ public class AppStateInstallAppsBridge extends AppStateBaseBridge {
        }

        public boolean canInstallApps() {
            if (appOpMode == AppOpsManager.MODE_DEFAULT) {
                return permissionGranted;
            } else {
            return appOpMode == AppOpsManager.MODE_ALLOWED;
        }
        }

        public boolean isPotentialAppSource() {
            return appOpMode != AppOpsManager.MODE_DEFAULT || permissionRequested;
@@ -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();
+3 −1
Original line number Diff line number Diff line
@@ -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;