diff --git a/renderdoc/replay/entry_points.cpp b/renderdoc/replay/entry_points.cpp index 830fafff8..4749fa8fa 100644 --- a/renderdoc/replay/entry_points.cpp +++ b/renderdoc/replay/entry_points.cpp @@ -759,8 +759,6 @@ extern "C" RENDERDOC_API void RENDERDOC_CC RENDERDOC_StartAndroidRemoteServer() adbExecCommand("shell am force-stop org.renderdoc.renderdoccmd"); adbForwardPorts(); adbExecCommand("shell setprop debug.vulkan.layers \\\"\\\""); - adbExecCommand( - "shell pm grant org.renderdoc.renderdoccmd android.permission.READ_EXTERNAL_STORAGE"); adbExecCommand( "shell am start -n org.renderdoc.renderdoccmd/.Loader -e renderdoccmd remoteserver"); } diff --git a/renderdoccmd/android/src/org/renderdoc/renderdoccmd/Loader.java b/renderdoccmd/android/src/org/renderdoc/renderdoccmd/Loader.java index f574f9889..9b9a64b63 100644 --- a/renderdoccmd/android/src/org/renderdoc/renderdoccmd/Loader.java +++ b/renderdoccmd/android/src/org/renderdoc/renderdoccmd/Loader.java @@ -7,4 +7,11 @@ public class Loader extends android.app.NativeActivity static { System.loadLibrary("renderdoc"); } + + @Override + protected void onCreate(android.os.Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + // Popup a dialog if we haven't granted Android storage permissions. + requestPermissions(new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1); + } }