Fix some issues with multiple supported android architectures.

git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@4554 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
Cory McWilliams 2023-10-20 00:54:55 +00:00
parent 996996e609
commit b74c347c7c
2 changed files with 13 additions and 14 deletions

View File

@ -656,15 +656,15 @@ out/apk/TildeFriends-debug.unsigned.apk: out/apk/classes.dex out/androiddebug/ti
out/apk/TildeFriends-release.unsigned.apk: out/apk/classes.dex out/androidrelease/tildefriends out/androidrelease-x86_64/tildefriends out/androidrelease-x86/tildefriends out/androidrelease-armv7a/tildefriends $(RAW_FILES) out/apk/res.apk out/apk/TildeFriends-release.unsigned.apk: out/apk/classes.dex out/androidrelease/tildefriends out/androidrelease-x86_64/tildefriends out/androidrelease-x86/tildefriends out/androidrelease-armv7a/tildefriends $(RAW_FILES) out/apk/res.apk
out/%.unsigned.apk: out/%.unsigned.apk:
@mkdir -p $(dir $@) out/apk$(BUILD_TYPE)/bin/arm64-v8a/ out/apk$(BUILD_TYPE)/bin/x86_64/ out/apk$(BUILD_TYPE)/bin/i686/ out/apk$(BUILD_TYPE)/bin/armv7a/ @mkdir -p $(dir $@) out/apk$(BUILD_TYPE)/bin/arm64-v8a/ out/apk$(BUILD_TYPE)/bin/x86_64/ out/apk$(BUILD_TYPE)/bin/i686/ out/apk$(BUILD_TYPE)/bin/armeabi-v7a/
@echo [aapt] $@ @echo [aapt] $@
@cp out/android$(BUILD_TYPE)/tildefriends out/apk$(BUILD_TYPE)/bin/arm64-v8a/ @cp out/android$(BUILD_TYPE)/tildefriends out/apk$(BUILD_TYPE)/bin/arm64-v8a/
@cp out/android$(BUILD_TYPE)-x86_64/tildefriends out/apk$(BUILD_TYPE)/bin/x86_64/ @cp out/android$(BUILD_TYPE)-x86_64/tildefriends out/apk$(BUILD_TYPE)/bin/x86_64/
#@cp out/android$(BUILD_TYPE)-x86/tildefriends out/apk$(BUILD_TYPE)/bin/i686/ #@cp out/android$(BUILD_TYPE)-x86/tildefriends out/apk$(BUILD_TYPE)/bin/i686/
#@cp out/android$(BUILD_TYPE)-armv7a/tildefriends out/apk$(BUILD_TYPE)/bin/armv7a/ #@cp out/android$(BUILD_TYPE)-armv7a/tildefriends out/apk$(BUILD_TYPE)/bin/armeabi-v7a/
@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/arm64-v8a/tildefriends @$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/arm64-v8a/tildefriends
#@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/armv7a/tildefriends
@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/x86_64/tildefriends @$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/x86_64/tildefriends
#@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/armeabi-v7a/tildefriends
#@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/i686/tildefriends #@$(ANDROID_NDK)/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip out/apk$(BUILD_TYPE)/bin/i686/tildefriends
@cp out/apk/res.apk $@ @cp out/apk/res.apk $@
@cp out/apk/classes.dex out/apk$(BUILD_TYPE)/ @cp out/apk/classes.dex out/apk$(BUILD_TYPE)/

View File

@ -8,8 +8,8 @@ import android.net.Uri;
import android.os.Bundle; import android.os.Bundle;
import android.os.CountDownTimer; import android.os.CountDownTimer;
import android.os.StrictMode; import android.os.StrictMode;
import android.os.strictmode.Violation;
import android.os.SystemClock; import android.os.SystemClock;
import android.os.strictmode.Violation;
import android.util.Log; import android.util.Log;
import android.view.KeyEvent; import android.view.KeyEvent;
import android.view.View; import android.view.View;
@ -27,6 +27,7 @@ import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.FileReader; import java.io.FileReader;
import java.io.InputStream;
import java.lang.Process; import java.lang.Process;
import java.lang.Thread; import java.lang.Thread;
import java.nio.file.FileSystems; import java.nio.file.FileSystems;
@ -37,7 +38,7 @@ import java.nio.file.WatchKey;
import java.nio.file.WatchService; import java.nio.file.WatchService;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.zip.ZipEntry; import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream; import java.util.zip.ZipFile;
public class MainActivity extends Activity { public class MainActivity extends Activity {
WebView web_view; WebView web_view;
@ -195,27 +196,25 @@ public class MainActivity extends Activity {
private boolean extract_executable() private boolean extract_executable()
{ {
try (ZipInputStream zip = new ZipInputStream(new BufferedInputStream(new FileInputStream(getPackageResourcePath().toString())))) { try (ZipFile zip = new ZipFile(new File(getPackageResourcePath()))) {
ZipEntry entry = null;
for (String abi : android.os.Build.SUPPORTED_ABIS) for (String abi : android.os.Build.SUPPORTED_ABIS)
{ {
String lookup = String.format("bin/%s/tildefriends", abi); String lookup = String.format("bin/%s/tildefriends", abi);
Log.w("tildefriends", "Looking for " + lookup); Log.w("tildefriends", "Looking for " + lookup);
while ((entry = zip.getNextEntry()) != null) { ZipEntry entry = zip.getEntry(lookup);
if (entry.getName().equals(lookup)) { if (entry != null) {
Log.w("tildefriends", "Extracting " + entry.getName()); Log.w("tildefriends", "Extracting " + entry.getName());
try (FileOutputStream out = new FileOutputStream(getFilesDir().toString().concat("/tildefriends"))) { try (FileOutputStream out = new FileOutputStream(getFilesDir().toString() + "/tildefriends")) {
try (InputStream in = zip.getInputStream(entry)) {
byte[] buffer = new byte[32768]; byte[] buffer = new byte[32768];
int count; int count;
while ((count = zip.read(buffer)) != -1) { while ((count = in.read(buffer)) != -1) {
out.write(buffer, 0, count); out.write(buffer, 0, count);
} }
out.close();
new File(getFilesDir().toString() + "/tildefriends").setExecutable(true); new File(getFilesDir().toString() + "/tildefriends").setExecutable(true);
return true; return true;
} }
} }
zip.closeEntry();
} }
} }
} catch (java.io.FileNotFoundException e) { } catch (java.io.FileNotFoundException e) {