Final fixes
This commit is contained in:
parent
6e28a26015
commit
45765e292d
@ -1,5 +1,6 @@
|
|||||||
#!/system/bin/sh
|
#!/system/bin/sh
|
||||||
|
|
||||||
|
[ -z $BOOTMODE ] && BOOTMODE=false
|
||||||
TMPDIR=/tmp
|
TMPDIR=/tmp
|
||||||
($BOOTMODE) && TMPDIR=/dev/tmp
|
($BOOTMODE) && TMPDIR=/dev/tmp
|
||||||
|
|
||||||
|
@ -82,44 +82,49 @@ public class InstallFragment extends Fragment implements CallbackHandler.EventLi
|
|||||||
.setNegativeButton(R.string.no_thanks, null)
|
.setNegativeButton(R.string.no_thanks, null)
|
||||||
.show();
|
.show();
|
||||||
});
|
});
|
||||||
uninstallButton.setOnClickListener(vi -> {
|
if (Global.Info.magiskVersion < 10.3) {
|
||||||
Utils.getAlertDialogBuilder(getActivity())
|
uninstallButton.setVisibility(View.GONE);
|
||||||
.setTitle("Uninstall Magisk")
|
} else {
|
||||||
.setMessage("This will remove all modules, MagiskSU, and potentially re-encrypt your device\nAre you sure to process?")
|
uninstallButton.setOnClickListener(vi -> {
|
||||||
.setPositiveButton(R.string.yes, (dialogInterface, i) -> {
|
Utils.getAlertDialogBuilder(getActivity())
|
||||||
try {
|
.setTitle("Uninstall Magisk")
|
||||||
InputStream in = getActivity().getAssets().open(UNINSTALLER);
|
.setMessage("This will remove all modules, MagiskSU, and potentially re-encrypt your device\nAre you sure to process?")
|
||||||
File uninstaller = new File(getActivity().getCacheDir().getAbsolutePath() + "/" + UNINSTALLER);
|
.setPositiveButton(R.string.yes, (dialogInterface, i) -> {
|
||||||
FileOutputStream out = new FileOutputStream(uninstaller);
|
try {
|
||||||
byte[] bytes = new byte[1024];
|
InputStream in = getActivity().getAssets().open(UNINSTALLER);
|
||||||
int read;
|
File uninstaller = new File(getActivity().getCacheDir().getAbsolutePath() + "/" + UNINSTALLER);
|
||||||
while ((read = in.read(bytes)) != -1)
|
FileOutputStream out = new FileOutputStream(uninstaller);
|
||||||
out.write(bytes, 0, read);
|
byte[] bytes = new byte[1024];
|
||||||
in.close();
|
int read;
|
||||||
out.close();
|
while ((read = in.read(bytes)) != -1)
|
||||||
ProgressDialog progress = new ProgressDialog(getActivity());
|
out.write(bytes, 0, read);
|
||||||
progress.setTitle(R.string.reboot);
|
in.close();
|
||||||
progress.show();
|
out.close();
|
||||||
new CountDownTimer(5000, 1000) {
|
ProgressDialog progress = new ProgressDialog(getActivity());
|
||||||
@Override
|
progress.setTitle(R.string.reboot);
|
||||||
public void onTick(long millisUntilFinished) {
|
progress.show();
|
||||||
progress.setMessage(getString(R.string.reboot_countdown, millisUntilFinished / 1000));
|
new CountDownTimer(5000, 1000) {
|
||||||
}
|
@Override
|
||||||
|
public void onTick(long millisUntilFinished) {
|
||||||
|
progress.setMessage(getString(R.string.reboot_countdown, millisUntilFinished / 1000));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFinish() {
|
||||||
|
progress.setMessage(getString(R.string.reboot_countdown, 0));
|
||||||
|
Shell.su(true, "cp -af " + uninstaller + " /cache/" + UNINSTALLER,
|
||||||
|
"reboot");
|
||||||
|
}
|
||||||
|
}.start();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.setNegativeButton(R.string.no_thanks, null)
|
||||||
|
.show();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onFinish() {
|
|
||||||
progress.setMessage(getString(R.string.reboot_countdown, 0));
|
|
||||||
Shell.su(true, "cp -af " + uninstaller + " /cache/" + UNINSTALLER,
|
|
||||||
"reboot");
|
|
||||||
}
|
|
||||||
}.start();
|
|
||||||
} catch (IOException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.setNegativeButton(R.string.no_thanks, null)
|
|
||||||
.show();
|
|
||||||
});
|
|
||||||
if (Global.Events.blockDetectionDone.isTriggered) {
|
if (Global.Events.blockDetectionDone.isTriggered) {
|
||||||
updateUI();
|
updateUI();
|
||||||
}
|
}
|
||||||
|
@ -16,14 +16,9 @@ public class SplashActivity extends AppCompatActivity {
|
|||||||
// Init the info and configs and root shell
|
// Init the info and configs and root shell
|
||||||
Global.init(getApplicationContext());
|
Global.init(getApplicationContext());
|
||||||
|
|
||||||
// Start MagiskHide if not started at boot
|
|
||||||
if (Global.Configs.magiskHide && !Global.Info.disabled && Global.Info.magiskVersion > 10.3)
|
|
||||||
new Async.MagiskHide().enable();
|
|
||||||
|
|
||||||
// Now fire all async tasks
|
// Now fire all async tasks
|
||||||
new Async.LoadApps(getPackageManager()).exec();
|
|
||||||
new Async.GetBootBlocks().exec();
|
|
||||||
new Async.CheckUpdates().exec();
|
new Async.CheckUpdates().exec();
|
||||||
|
new Async.GetBootBlocks().exec();
|
||||||
new Async.LoadModules() {
|
new Async.LoadModules() {
|
||||||
@Override
|
@Override
|
||||||
protected void onPostExecute(Void v) {
|
protected void onPostExecute(Void v) {
|
||||||
@ -31,6 +26,7 @@ public class SplashActivity extends AppCompatActivity {
|
|||||||
new Async.LoadRepos(getApplicationContext()).exec();
|
new Async.LoadRepos(getApplicationContext()).exec();
|
||||||
}
|
}
|
||||||
}.exec();
|
}.exec();
|
||||||
|
new Async.LoadApps(getPackageManager()).exec();
|
||||||
|
|
||||||
// Preparation done, now start main activity
|
// Preparation done, now start main activity
|
||||||
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
|
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
|
||||||
|
@ -44,22 +44,23 @@ public class SuReceiver extends BroadcastReceiver {
|
|||||||
|
|
||||||
SuLogEntry log = new SuLogEntry(policy);
|
SuLogEntry log = new SuLogEntry(policy);
|
||||||
|
|
||||||
if (policy.notification && Global.Configs.suNotificationType == TOAST) {
|
String message;
|
||||||
String message;
|
switch (action) {
|
||||||
switch (action) {
|
case "allow":
|
||||||
case "allow":
|
message = context.getString(R.string.su_allow_toast, policy.appName);
|
||||||
message = context.getString(R.string.su_allow_toast, policy.appName);
|
log.action = true;
|
||||||
log.action = true;
|
break;
|
||||||
break;
|
case "deny":
|
||||||
case "deny":
|
message = context.getString(R.string.su_deny_toast, policy.appName);
|
||||||
message = context.getString(R.string.su_deny_toast, policy.appName);
|
log.action = false;
|
||||||
log.action = false;
|
break;
|
||||||
break;
|
default:
|
||||||
default:
|
return;
|
||||||
return;
|
|
||||||
}
|
|
||||||
Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (policy.notification && Global.Configs.suNotificationType == TOAST)
|
||||||
|
Toast.makeText(context, message, Toast.LENGTH_SHORT).show();
|
||||||
|
|
||||||
if (policy.logging) {
|
if (policy.logging) {
|
||||||
toUid = intent.getIntExtra("to.uid", -1);
|
toUid = intent.getIntExtra("to.uid", -1);
|
||||||
if (toUid < 0) return;
|
if (toUid < 0) return;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user