diff --git a/app/src/main/assets/java_sandbox.policy b/app/src/main/assets/java_sandbox.policy index 33a4e02dc..755dbe2c0 100644 --- a/app/src/main/assets/java_sandbox.policy +++ b/app/src/main/assets/java_sandbox.policy @@ -5,8 +5,11 @@ grant { permission java.io.FilePermission "${java.io.tmpdir}/*", "read, write, delete"; permission java.io.FilePermission "${pojav.path.minecraft}/*", "read, write, delete"; + + permission java.util.PropertyPermission "java.net.preferIPv4Stack", "write"; }; deny { + permission java.io.FilePermission "${pojav.path.private.account}/*", "read, write, delete" permission java.io.FilePermission "<>", "write, delete, execute" -} \ No newline at end of file +} diff --git a/app/src/main/java/net/kdt/pojavlaunch/Tools.java b/app/src/main/java/net/kdt/pojavlaunch/Tools.java index 5a934b85e..b9123853b 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/Tools.java +++ b/app/src/main/java/net/kdt/pojavlaunch/Tools.java @@ -78,9 +78,12 @@ public final class Tools public static void getJavaArgs(Context ctx, List javaArgList) { List overrideableArgList = new ArrayList(); + overrideableArgList.add("-Djava.security.manager"); + overrideableArgList.add("-Djava.security.policy=java_sandbox.policy"); + overrideableArgList.add("-Djava.home=" + Tools.DIR_HOME_JRE); overrideableArgList.add("-Djava.io.tmpdir=" + ctx.getCacheDir().getAbsolutePath()); - // overrideableArgList.add("-Djava.library.path=" + JREUtils.LD_LIBRARY_PATH); + overrideableArgList.add("-Duser.home=" + new File(Tools.DIR_GAME_NEW).getParent()); overrideableArgList.add("-Duser.language=" + System.getProperty("user.language")); // overrideableArgList.add("-Duser.timezone=GMT"); @@ -88,6 +91,9 @@ public final class Tools overrideableArgList.add("-Dos.name=Linux"); overrideableArgList.add("-Dos.version=Android-" + Build.VERSION.RELEASE); + overrideableArgList.add("-Dpojav.path.minecraft=" + Tools.DIR_GAME_NEW); + overrideableArgList.add("-Dpojav.path.private.account=" + Tools.DIR_ACCOUNT_NEW); + // javaArgList.add("-Dorg.lwjgl.libname=liblwjgl3.so"); // javaArgList.add("-Dorg.lwjgl.system.jemalloc.libname=libjemalloc.so");