From d535bc980d8fb71dc33379f68b09285ef849924d Mon Sep 17 00:00:00 2001 From: Eugen Pechanec Date: Mon, 20 Jun 2022 12:22:16 +0200 Subject: [PATCH] Override ANDROID_DATA in server We need a path that is writable by shell on Android 4. https://github.com/Genymobile/scrcpy/issues/98#issuecomment-379046536 --- app/src/server.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/src/server.c b/app/src/server.c index 663ef18b..ba00b14f 100644 --- a/app/src/server.c +++ b/app/src/server.c @@ -18,6 +18,7 @@ #define SC_SERVER_PATH_DEFAULT PREFIX "/share/scrcpy/" SC_SERVER_FILENAME #define SC_DEVICE_SERVER_PATH "/data/local/tmp/scrcpy-server.jar" +#define SC_DEVICE_ANDROID_DATA_PATH "/data/local/tmp" static char * get_server_path(void) { @@ -166,6 +167,9 @@ execute_server(struct sc_server *server, cmd[count++] = "-s"; cmd[count++] = serial; cmd[count++] = "shell"; + cmd[count++] = "mkdir -p " SC_DEVICE_ANDROID_DATA_PATH "/dalvik-cache"; + cmd[count++] = "&&"; + cmd[count++] = "ANDROID_DATA=" SC_DEVICE_ANDROID_DATA_PATH; cmd[count++] = "CLASSPATH=" SC_DEVICE_SERVER_PATH; cmd[count++] = "app_process";