Skip to content

Commit

Permalink
fix cacio, update gl4es
Browse files Browse the repository at this point in the history
  • Loading branch information
Tungstend committed Aug 29, 2022
1 parent 4a0560c commit f41d08c
Show file tree
Hide file tree
Showing 12 changed files with 66 additions and 9 deletions.
12 changes: 6 additions & 6 deletions .idea/deploymentTargetDropDown.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file not shown.
2 changes: 1 addition & 1 deletion HMCLPE/src/main/assets/app_runtime/java/JRE17/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
16
20
2 changes: 1 addition & 1 deletion HMCLPE/src/main/assets/app_runtime/java/default/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
16
20
2 changes: 1 addition & 1 deletion HMCLPE/src/main/assets/app_runtime/version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
161
162
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
package com.tungsten.hmclpe.launcher.setting;

import static net.kdt.pojavlaunch.utils.Architecture.ARCH_ARM;
import static net.kdt.pojavlaunch.utils.Architecture.ARCH_ARM64;
import static net.kdt.pojavlaunch.utils.Architecture.ARCH_X86;
import static net.kdt.pojavlaunch.utils.Architecture.ARCH_X86_64;
import static org.apache.commons.io.FileUtils.listFiles;

import android.annotation.SuppressLint;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
Expand All @@ -16,7 +21,11 @@
import com.tungsten.hmclpe.utils.file.FileStringUtils;
import com.tungsten.hmclpe.utils.file.FileUtils;

import org.apache.commons.io.IOUtils;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Collection;
import java.util.Objects;
Expand Down Expand Up @@ -121,6 +130,11 @@ public static void checkJava8(SplashActivity activity, AssetsUtils.ProgressCallb
AssetsUtils.getInstance(activity).setProgressCallback(callback).copyOnMainThread("app_runtime/java/8-x86_64",AppManifest.JAVA_DIR + "/default");
}
unpack200(activity.getApplicationContext().getApplicationInfo().nativeLibraryDir, AppManifest.JAVA_DIR + "/default");
try {
postPrepare(activity, "default");
} catch (IOException e) {
e.printStackTrace();
}
}
}

Expand All @@ -145,6 +159,11 @@ public static void checkJava17(SplashActivity activity, AssetsUtils.ProgressCall
AssetsUtils.getInstance(activity).setProgressCallback(callback).copyOnMainThread("app_runtime/java/17-x86_64",AppManifest.JAVA_DIR + "/JRE17");
}
unpack200(activity.getApplicationContext().getApplicationInfo().nativeLibraryDir, AppManifest.JAVA_DIR + "/JRE17");
try {
postPrepare(activity, "default");
} catch (IOException e) {
e.printStackTrace();
}
}
}

Expand All @@ -171,6 +190,44 @@ private static void unpack200(String nativeLibraryDir, String runtimePath) {
}
}

public static void postPrepare(Context context, String name) throws IOException {
File dest = new File(AppManifest.JAVA_DIR,"/" + name);
if(!dest.exists()) return;
String libFolder = "lib";
String arch = "";
if (net.kdt.pojavlaunch.utils.Architecture.getDeviceArchitecture() == ARCH_ARM) {
arch = "aarch32";
}
if (net.kdt.pojavlaunch.utils.Architecture.getDeviceArchitecture() == ARCH_ARM64) {
arch = "aarch64";
}
if (net.kdt.pojavlaunch.utils.Architecture.getDeviceArchitecture() == ARCH_X86) {
arch = "i386";
}
if (net.kdt.pojavlaunch.utils.Architecture.getDeviceArchitecture() == ARCH_X86_64) {
arch = "amd64";
}
if(new File(dest,libFolder + "/" + arch).exists()) libFolder = libFolder + "/" + arch;
File ftIn = new File(dest, libFolder + "/libfreetype.so.6");
File ftOut = new File(dest, libFolder + "/libfreetype.so");
if (ftIn.exists() && (!ftOut.exists() || ftIn.length() != ftOut.length())) {
ftIn.renameTo(ftOut);
}

// Refresh libraries
copyDummyNativeLib(context,"libawt_xawt.so", dest, libFolder);
}

private static void copyDummyNativeLib(Context ctx, String name, File dest, String libFolder) throws IOException {
File fileLib = new File(dest, "/"+libFolder + "/" + name);
fileLib.delete();
FileInputStream is = new FileInputStream(new File(ctx.getApplicationInfo().nativeLibraryDir, name));
FileOutputStream os = new FileOutputStream(fileLib);
IOUtils.copy(is, os);
is.close();
os.close();
}

@SuppressLint("SetTextI18n")
public static void enterLauncher (SplashActivity activity) {
activity.loadingText.setText(activity.getString(R.string.loading_hint_ready));
Expand Down
Binary file modified PojavLauncher/src/main/jniLibs/arm64-v8a/libgl4es_114.so
Binary file not shown.
Binary file modified PojavLauncher/src/main/jniLibs/armeabi-v7a/libgl4es_114.so
Binary file not shown.
Binary file modified PojavLauncher/src/main/jniLibs/x86/libgl4es_114.so
Binary file not shown.
Binary file modified PojavLauncher/src/main/jniLibs/x86_64/libgl4es_114.so
Binary file not shown.

0 comments on commit f41d08c

Please sign in to comment.