mirror of
https://github.com/xoureldeen/Vectras-VM-Android.git
synced 2026-05-22 03:19:23 +00:00
4.1.0
- Bugs fixed.
This commit is contained in:
parent
5b118c4b61
commit
d00f5f4a22
8 changed files with 54 additions and 44 deletions
2
.github/ISSUE_TEMPLATE/bug.yaml
vendored
2
.github/ISSUE_TEMPLATE/bug.yaml
vendored
|
|
@ -31,6 +31,8 @@ body:
|
|||
description: What version of our software are you running?
|
||||
options:
|
||||
- Latest
|
||||
- Beta
|
||||
- 4.1.0
|
||||
- 4.0.0
|
||||
- 3.9.0
|
||||
- 3.8.0
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@ android {
|
|||
applicationId "com.vectras.vm"
|
||||
minSdk minApi
|
||||
targetSdk targetApi
|
||||
versionCode 113
|
||||
versionName "4.0.9"
|
||||
versionCode 114
|
||||
versionName "4.1.0"
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
multiDexEnabled true
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#include <jni.h>
|
||||
#include <unistd.h>
|
||||
#include <thread>
|
||||
#include <sys/auxv.h>
|
||||
|
||||
#if defined(__aarch64__)
|
||||
#include <sys/auxv.h>
|
||||
#include <asm/hwcap.h>
|
||||
#elif defined(__x86_64__)
|
||||
#include <cpuid.h>
|
||||
|
|
|
|||
|
|
@ -151,7 +151,7 @@ public class ExportRomActivity extends AppCompatActivity {
|
|||
vmConfigMap.put("isUseLocalTime", current.isUseLocalTime);
|
||||
vmConfigMap.put("isUseUefi", current.isUseUefi);
|
||||
vmConfigMap.put("isUseDefaultBios", current.isUseDefaultBios);
|
||||
vmConfigMap.put("qemu", VmFileManager.pathToTextMark(current.vmID, current.itemExtra));
|
||||
vmConfigMap.put("qemu", VmFileManager.pathToTextMark(this, current.vmID, current.itemExtra));
|
||||
vmConfigMap.put("arch", current.itemArch);
|
||||
|
||||
if (Objects.requireNonNull(binding.edAuthor.getText()).toString().isEmpty()) {
|
||||
|
|
@ -189,7 +189,7 @@ public class ExportRomActivity extends AppCompatActivity {
|
|||
String snapshotParams = FileUtils.readAFile(_filelist.get(_repeat));
|
||||
snapshotParams = StartVM.removeQmpParams(snapshotParams);
|
||||
snapshotParams = StartVM.removeDisplayParams(snapshotParams);
|
||||
FileUtils.writeToFile(tempFolder, VmFileManager.SNAPSHOT_SH_FILE_NAME, snapshotParams.replace(getRomPath, VmFileManager.TEXT_MARK_VM_PATH));
|
||||
FileUtils.writeToFile(tempFolder, VmFileManager.SNAPSHOT_SH_FILE_NAME, VmFileManager.pathToTextMark(this, current.vmID, snapshotParams));
|
||||
pathList.add(tempFolder + VmFileManager.SNAPSHOT_SH_FILE_NAME);
|
||||
}
|
||||
} else if (_filelist.get(_repeat).endsWith(VmFileManager.CREATE_COMMAND_CONFIG_FILE_NAME)) {
|
||||
|
|
|
|||
|
|
@ -55,11 +55,11 @@ public class ControlersOptionsFragment extends DialogFragment {
|
|||
public void onClick(View v) {
|
||||
MainSettingsManager.setControlMode(getActivity(), "H");
|
||||
if (MainSettingsManager.getVmUi(getActivity()).equals("X11")) {
|
||||
X11Activity.desktop.setVisibility(View.GONE);
|
||||
X11Activity.gamepad.setVisibility(View.GONE);
|
||||
if (X11Activity.desktop != null) X11Activity.desktop.setVisibility(View.GONE);
|
||||
if (X11Activity.gamepad != null) X11Activity.gamepad.setVisibility(View.GONE);
|
||||
} else if (MainSettingsManager.getVmUi(getActivity()).equals("VNC")) {
|
||||
MainVNCActivity.desktop.setVisibility(View.GONE);
|
||||
MainVNCActivity.gamepad.setVisibility(View.GONE);
|
||||
if (MainVNCActivity.desktop != null) MainVNCActivity.desktop.setVisibility(View.GONE);
|
||||
if (MainVNCActivity.gamepad != null) MainVNCActivity.gamepad.setVisibility(View.GONE);
|
||||
}
|
||||
alertDialog.cancel();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
return true;
|
||||
} else if (id == R.id.add_file) {
|
||||
try {
|
||||
filePicker.launch("*/*");
|
||||
filePicker.launch("*/*");
|
||||
} catch (Exception e) {
|
||||
IntentUtils.showErrorDialog(this);
|
||||
}
|
||||
|
|
@ -140,14 +140,14 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
|
||||
binding.drive.setOnClickListener(v -> {
|
||||
try {
|
||||
diskPicker.launch("*/*");
|
||||
diskPicker.launch("*/*");
|
||||
} catch (Exception e) {
|
||||
IntentUtils.showErrorDialog(this);
|
||||
}
|
||||
});
|
||||
binding.driveField.setOnClickListener(v -> {
|
||||
try {
|
||||
diskPicker.launch("*/*");
|
||||
diskPicker.launch("*/*");
|
||||
} catch (Exception e) {
|
||||
IntentUtils.showErrorDialog(this);
|
||||
}
|
||||
|
|
@ -339,7 +339,7 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
if (Objects.requireNonNull(getIntent().getStringExtra("romextra")).isEmpty()) {
|
||||
setDefault();
|
||||
} else {
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(vmID, Objects.requireNonNull(getIntent().getStringExtra("romextra"))));
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(this, vmID, Objects.requireNonNull(getIntent().getStringExtra("romextra"))));
|
||||
}
|
||||
|
||||
binding.title.setText(getIntent().getStringExtra("romname"));
|
||||
|
|
@ -645,7 +645,7 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
if (current.itemExtra != null) {
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(vmID, current.itemExtra));
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(this, vmID, current.itemExtra));
|
||||
}
|
||||
|
||||
cpu = current.cpu;
|
||||
|
|
@ -968,27 +968,27 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
}
|
||||
});
|
||||
} else {
|
||||
if (!FileUtils.isValidFilePath(this, FileUtils.getPath(this, _content_describer), false)) {
|
||||
DialogUtils.oneDialog(this,
|
||||
getString(R.string.problem_has_been_detected),
|
||||
getString(R.string.invalid_file_path_content),
|
||||
getString(R.string.ok),
|
||||
true,
|
||||
R.drawable.warning_48px,
|
||||
true,
|
||||
null,
|
||||
null);
|
||||
return;
|
||||
}
|
||||
|
||||
ProgressDialog progressDialog1 = new ProgressDialog(this);
|
||||
progressDialog1.show();
|
||||
new Thread(() -> {
|
||||
File selectedFilePath = new File(getPath(_content_describer));
|
||||
String path = getPath(_content_describer);
|
||||
runOnUiThread(() -> {
|
||||
progressDialog1.reset();
|
||||
binding.drive.setText(selectedFilePath.getPath());
|
||||
binding.driveField.setEndIconDrawable(R.drawable.more_vert_24px);
|
||||
|
||||
if (!FileUtils.isValidFilePath(this, path, false)) {
|
||||
DialogUtils.oneDialog(this,
|
||||
getString(R.string.problem_has_been_detected),
|
||||
getString(R.string.invalid_file_path_content),
|
||||
getString(R.string.ok),
|
||||
true,
|
||||
R.drawable.warning_48px,
|
||||
true,
|
||||
null,
|
||||
null);
|
||||
} else {
|
||||
binding.drive.setText(path);
|
||||
binding.driveField.setEndIconDrawable(R.drawable.more_vert_24px);
|
||||
}
|
||||
});
|
||||
}).start();
|
||||
}
|
||||
|
|
@ -1121,7 +1121,7 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
binding.qemu.setText(Objects.requireNonNull(getIntent().getStringExtra("romextra")).replaceAll(Objects.requireNonNull(getIntent().getStringExtra("finalromfilename")), "\"" + _getDiskFile + "\""));
|
||||
} else {
|
||||
binding.drive.setText(_getDiskFile);
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(vmID, Objects.requireNonNull(getIntent().getStringExtra("romextra"))));
|
||||
binding.qemu.setText(VmFileManager.textMarkToPath(this, vmID, Objects.requireNonNull(getIntent().getStringExtra("romextra"))));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1204,11 +1204,13 @@ public class VMCreatorActivity extends AppCompatActivity {
|
|||
}
|
||||
|
||||
if (VmFileManager.isCreateCommandConfigFileExists(vmID)) {
|
||||
FileUtils.writeToFile(VmFileManager.getPath(vmID), VmFileManager.CREATE_COMMAND_CONFIG_FILE_NAME, VmFileManager.textMarkToPath(vmID, FileUtils.readAFile(VmFileManager.getCreateCommandConfigFile(vmID))));
|
||||
FileUtils.writeToFile(VmFileManager.getPath(vmID), VmFileManager.CREATE_COMMAND_CONFIG_FILE_NAME, VmFileManager.textMarkToPath(this, vmID, FileUtils.readAFile(VmFileManager.getCreateCommandConfigFile(vmID))));
|
||||
}
|
||||
|
||||
if (VmFileManager.isSnapshotShExists(vmID)) {
|
||||
FileUtils.writeToFile(VmFileManager.getPath(vmID), VmFileManager.SNAPSHOT_SH_FILE_NAME, VmFileManager.textMarkToPath(vmID, FileUtils.readAFile(VmFileManager.getSnapshotSh(vmID))));
|
||||
String snapshotParams = FileUtils.readAFile(VmFileManager.getSnapshotSh(vmID));
|
||||
if (snapshotParams.isEmpty()) return;
|
||||
FileUtils.writeToFile(VmFileManager.getPath(vmID), VmFileManager.SNAPSHOT_SH_FILE_NAME, VmFileManager.textMarkToPath(this, vmID, snapshotParams));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,8 @@ public class VmFileManager {
|
|||
public static final String CREATE_COMMAND_CONFIG_FILE_NAME = "cqcm.json";
|
||||
public static final String LOG_FILE_NAME = "vm.log";
|
||||
public static final String TEXT_MARK_VM_PATH = "OhnoIjustrealizeditsmidnightandIstillhavetodothis";
|
||||
public static final String TEXT_MARK_EXTERNAL_DATA_PATH = "%external_data%";
|
||||
public static final String TEXT_MARK_VM_TEMP_PATH = "%vm_temp%";
|
||||
public static final String HIDE_VM_SUFFIX = "_";
|
||||
|
||||
|
||||
|
|
@ -198,11 +200,15 @@ public class VmFileManager {
|
|||
return VmFileManager.getPath(vmId, CREATE_COMMAND_CONFIG_FILE_NAME);
|
||||
}
|
||||
|
||||
public static String textMarkToPath(String vmId, String content) {
|
||||
return content.replace(TEXT_MARK_VM_PATH, getPath(vmId));
|
||||
public static String textMarkToPath(Context context, String vmId, String content) {
|
||||
return content.replace(TEXT_MARK_VM_PATH, getPath(vmId))
|
||||
.replace(TEXT_MARK_VM_TEMP_PATH, getTempPath(context, vmId))
|
||||
.replace(TEXT_MARK_EXTERNAL_DATA_PATH, AppConfig.datadirpath(context) + "/");
|
||||
}
|
||||
|
||||
public static String pathToTextMark(String vmId, String content) {
|
||||
return content.replace(getPath(vmId), TEXT_MARK_VM_PATH);
|
||||
public static String pathToTextMark(Context context, String vmId, String content) {
|
||||
return content.replace(getPath(vmId), TEXT_MARK_VM_PATH)
|
||||
.replace(getTempPath(context, vmId), TEXT_MARK_VM_TEMP_PATH)
|
||||
.replace(AppConfig.datadirpath(context) + "/", TEXT_MARK_EXTERNAL_DATA_PATH);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,15 +1,15 @@
|
|||
{
|
||||
"versionCode":"104",
|
||||
"versionName":"4.0.0",
|
||||
"versionCode":"114",
|
||||
"versionName":"4.1.0",
|
||||
"size": "45 MB",
|
||||
"url": "https://github.com/xoureldeen/Vectras-VM-Android/releases",
|
||||
"Message": "<h2>4.0.0</h2>\nBugs fixed.",
|
||||
"Message": "<h2>4.1.0</h2>\nBugs fixed.",
|
||||
"cancellable": true,
|
||||
"versionCodeBeta":"113",
|
||||
"versionNameBeta":"4.0.9",
|
||||
"versionNameBetas":"4.0.0,4.0.1,4.0.2,4.0.3,4.0.4,4.0.5,4.0.6,4.0.7,4.0.8,4.0.9",
|
||||
"versionCodeBeta":"114",
|
||||
"versionNameBeta":"4.1.0",
|
||||
"versionNameBetas":"4.0.0,4.0.1,4.0.2,4.0.3,4.0.4,4.0.5,4.0.6,4.0.7,4.0.8,4.0.9,4.1.0",
|
||||
"sizeBeta": "45 MB",
|
||||
"urlBeta": "https://github.com/AnBui2004/Vectras-VM-Emu-Android/releases",
|
||||
"MessageBeta": "<h2>4.0.9</h2>Bugs fixed.",
|
||||
"MessageBeta": "<h2>4.1.0</h2>Bugs fixed.",
|
||||
"cancellableBeta": true
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue