summaryrefslogtreecommitdiff
path: root/cmds/sm
diff options
context:
space:
mode:
Diffstat (limited to 'cmds/sm')
-rw-r--r--cmds/sm/src/com/android/commands/sm/Sm.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/cmds/sm/src/com/android/commands/sm/Sm.java b/cmds/sm/src/com/android/commands/sm/Sm.java
index 405d6f6f5f63..dc2868a59840 100644
--- a/cmds/sm/src/com/android/commands/sm/Sm.java
+++ b/cmds/sm/src/com/android/commands/sm/Sm.java
@@ -20,6 +20,7 @@ import android.os.IVoldTaskListener;
import android.os.PersistableBundle;
import android.os.RemoteException;
import android.os.ServiceManager;
+import android.os.SystemProperties;
import android.os.storage.DiskInfo;
import android.os.storage.IStorageManager;
import android.os.storage.StorageManager;
@@ -30,6 +31,8 @@ import java.util.concurrent.CompletableFuture;
public final class Sm {
private static final String TAG = "Sm";
+ private static final String ANDROID_VOLD_APP_DATA_ISOLATION_ENABLED_PROPERTY =
+ "persist.sys.vold_app_data_isolation_enabled";
IStorageManager mSm;
@@ -256,6 +259,10 @@ public final class Sm {
}
public void runDisableAppDataIsolation() throws RemoteException {
+ if (!SystemProperties.getBoolean(
+ ANDROID_VOLD_APP_DATA_ISOLATION_ENABLED_PROPERTY, false)) {
+ throw new IllegalStateException("Storage app data isolation is not enabled.");
+ }
final String pkgName = nextArg();
final int pid = Integer.parseInt(nextArg());
final int userId = Integer.parseInt(nextArg());