From 805a9001e193dfbad59b59ac6faa3704321d1190 Mon Sep 17 00:00:00 2001 From: Alexander Bakker Date: Sun, 20 Dec 2020 13:53:34 +0100 Subject: [PATCH] Run libsu commands inside the global mount namespace This ensures we're able to access other app's internal storage directories using libsu when running on Android 11 or newer. --- .../java/com/beemdevelopment/aegis/AegisApplication.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/src/main/java/com/beemdevelopment/aegis/AegisApplication.java b/app/src/main/java/com/beemdevelopment/aegis/AegisApplication.java index 1ef86ffc..f8ba39b2 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/AegisApplication.java +++ b/app/src/main/java/com/beemdevelopment/aegis/AegisApplication.java @@ -29,6 +29,7 @@ import com.beemdevelopment.aegis.vault.VaultManager; import com.beemdevelopment.aegis.vault.VaultManagerException; import com.mikepenz.iconics.Iconics; import com.mikepenz.material_design_iconic_typeface_library.MaterialDesignIconic; +import com.topjohnwu.superuser.Shell; import java.util.ArrayList; import java.util.Collections; @@ -43,6 +44,11 @@ public class AegisApplication extends Application { private static final String CODE_LOCK_STATUS_ID = "lock_status_channel"; private static final String CODE_LOCK_VAULT_ACTION = "lock_vault"; + static { + // to access other app's internal storage directory, run libsu commands inside the global mount namespace + Shell.Config.setFlags(Shell.FLAG_MOUNT_MASTER); + } + @Override public void onCreate() { super.onCreate();