mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-08-17 20:07:35 +00:00
Compare commits
2 Commits
manager-v5
...
manager-v5
Author | SHA1 | Date | |
---|---|---|---|
![]() |
cc14a1c361 | ||
![]() |
bcdface60d |
@@ -8,8 +8,8 @@ android {
|
|||||||
applicationId "com.topjohnwu.magisk"
|
applicationId "com.topjohnwu.magisk"
|
||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion 26
|
targetSdkVersion 26
|
||||||
versionCode 45
|
versionCode 46
|
||||||
versionName "5.0.5"
|
versionName "5.0.6"
|
||||||
ndk {
|
ndk {
|
||||||
moduleName 'zipadjust'
|
moduleName 'zipadjust'
|
||||||
abiFilters 'x86', 'armeabi-v7a'
|
abiFilters 'x86', 'armeabi-v7a'
|
||||||
|
@@ -3,6 +3,7 @@ package com.topjohnwu.magisk;
|
|||||||
import android.animation.Animator;
|
import android.animation.Animator;
|
||||||
import android.animation.ValueAnimator;
|
import android.animation.ValueAnimator;
|
||||||
import android.app.ProgressDialog;
|
import android.app.ProgressDialog;
|
||||||
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
@@ -142,7 +143,7 @@ public class MagiskFragment extends Fragment
|
|||||||
private boolean verity = keepVerityChkbox.isChecked();
|
private boolean verity = keepVerityChkbox.isChecked();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDownloadDone(Uri uri) {
|
public void onDownloadDone(Uri uri, Context context) {
|
||||||
new ProcessMagiskZip(getActivity(), uri, boot, enc, verity).exec();
|
new ProcessMagiskZip(getActivity(), uri, boot, enc, verity).exec();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@@ -65,9 +65,8 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
|
|||||||
mContext,
|
mContext,
|
||||||
new DownloadReceiver() {
|
new DownloadReceiver() {
|
||||||
@Override
|
@Override
|
||||||
public void onDownloadDone(Uri uri) {
|
public void onDownloadDone(Uri uri, Context context) {
|
||||||
Activity activity = (Activity) mContext;
|
new ProcessRepoZip((Activity) mContext, uri, true).exec();
|
||||||
new ProcessRepoZip(activity, uri, true).exec();
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
repo.getZipUrl(),
|
repo.getZipUrl(),
|
||||||
@@ -76,9 +75,8 @@ public class ReposAdapter extends RecyclerView.Adapter<ReposAdapter.ViewHolder>
|
|||||||
mContext,
|
mContext,
|
||||||
new DownloadReceiver() {
|
new DownloadReceiver() {
|
||||||
@Override
|
@Override
|
||||||
public void onDownloadDone(Uri uri) {
|
public void onDownloadDone(Uri uri, Context context) {
|
||||||
Activity activity = (Activity) mContext;
|
new ProcessRepoZip((Activity) mContext, uri, false).exec();
|
||||||
new ProcessRepoZip(activity, uri, false).exec();
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
repo.getZipUrl(),
|
repo.getZipUrl(),
|
||||||
|
@@ -12,7 +12,6 @@ import com.topjohnwu.magisk.R;
|
|||||||
import com.topjohnwu.magisk.utils.Utils;
|
import com.topjohnwu.magisk.utils.Utils;
|
||||||
|
|
||||||
public abstract class DownloadReceiver extends BroadcastReceiver {
|
public abstract class DownloadReceiver extends BroadcastReceiver {
|
||||||
public Context mContext;
|
|
||||||
public String mFilename;
|
public String mFilename;
|
||||||
long downloadID;
|
long downloadID;
|
||||||
|
|
||||||
@@ -20,7 +19,6 @@ public abstract class DownloadReceiver extends BroadcastReceiver {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
mContext = context;
|
|
||||||
DownloadManager downloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
|
DownloadManager downloadManager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
|
||||||
String action = intent.getAction();
|
String action = intent.getAction();
|
||||||
if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
|
if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
|
||||||
@@ -33,7 +31,7 @@ public abstract class DownloadReceiver extends BroadcastReceiver {
|
|||||||
switch (status) {
|
switch (status) {
|
||||||
case DownloadManager.STATUS_SUCCESSFUL:
|
case DownloadManager.STATUS_SUCCESSFUL:
|
||||||
Uri uri = Uri.parse(c.getString(c.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)));
|
Uri uri = Uri.parse(c.getString(c.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)));
|
||||||
onDownloadDone(uri);
|
onDownloadDone(uri, context);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
Toast.makeText(context, R.string.download_file_error, Toast.LENGTH_LONG).show();
|
Toast.makeText(context, R.string.download_file_error, Toast.LENGTH_LONG).show();
|
||||||
@@ -54,5 +52,5 @@ public abstract class DownloadReceiver extends BroadcastReceiver {
|
|||||||
mFilename = filename;
|
mFilename = filename;
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract void onDownloadDone(Uri uri);
|
public abstract void onDownloadDone(Uri uri, Context context);
|
||||||
}
|
}
|
||||||
|
@@ -18,19 +18,19 @@ public class ManagerUpdate extends BroadcastReceiver {
|
|||||||
context,
|
context,
|
||||||
new DownloadReceiver() {
|
new DownloadReceiver() {
|
||||||
@Override
|
@Override
|
||||||
public void onDownloadDone(Uri uri) {
|
public void onDownloadDone(Uri uri, Context context) {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
Intent install = new Intent(Intent.ACTION_INSTALL_PACKAGE);
|
Intent install = new Intent(Intent.ACTION_INSTALL_PACKAGE);
|
||||||
install.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
install.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
||||||
Uri content = FileProvider.getUriForFile(mContext,
|
Uri content = FileProvider.getUriForFile(context,
|
||||||
"com.topjohnwu.magisk.provider", new File(uri.getPath()));
|
"com.topjohnwu.magisk.provider", new File(uri.getPath()));
|
||||||
install.setData(content);
|
install.setData(content);
|
||||||
mContext.startActivity(install);
|
context.startActivity(install);
|
||||||
} else {
|
} else {
|
||||||
Intent install = new Intent(Intent.ACTION_VIEW);
|
Intent install = new Intent(Intent.ACTION_VIEW);
|
||||||
install.setDataAndType(uri, "application/vnd.android.package-archive");
|
install.setDataAndType(uri, "application/vnd.android.package-archive");
|
||||||
install.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
install.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
mContext.startActivity(install);
|
context.startActivity(install);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@@ -60,7 +60,7 @@
|
|||||||
<string name="disable_file_created">Η ενότητα θα απενεργοποιηθεί στην επόμενη επανεκκίνηση</string>
|
<string name="disable_file_created">Η ενότητα θα απενεργοποιηθεί στην επόμενη επανεκκίνηση</string>
|
||||||
<string name="disable_file_removed">Η ενότητα θα ενεργοποιηθεί στην επόμενη επανεκκίνηση</string>
|
<string name="disable_file_removed">Η ενότητα θα ενεργοποιηθεί στην επόμενη επανεκκίνηση</string>
|
||||||
<string name="author">Δημιουργήθηκε από τον/την %1$s</string>
|
<string name="author">Δημιουργήθηκε από τον/την %1$s</string>
|
||||||
<string name="fab_flash_zip">Flash Module Zip</string>
|
<string name="fab_flash_zip">Flash Zip Ενότητας</string>
|
||||||
|
|
||||||
<!--Repo Fragment-->
|
<!--Repo Fragment-->
|
||||||
<string name="update_available">Διαθέσιμη Ενημέρωση</string>
|
<string name="update_available">Διαθέσιμη Ενημέρωση</string>
|
||||||
@@ -118,7 +118,7 @@
|
|||||||
<string name="repo_cache_cleared">Η Repo cache καθαρίστηκε</string>
|
<string name="repo_cache_cleared">Η Repo cache καθαρίστηκε</string>
|
||||||
<string name="safetyNet_hide_notice">Αυτή η εφαρμογή χρησιμοποιεί SafetyNet\nΉδη διαχειρίζεται από το MagiskHide από προεπιλογή</string>
|
<string name="safetyNet_hide_notice">Αυτή η εφαρμογή χρησιμοποιεί SafetyNet\nΉδη διαχειρίζεται από το MagiskHide από προεπιλογή</string>
|
||||||
<string name="start_magiskhide">Εκκίνηση MagiskHide …</string>
|
<string name="start_magiskhide">Εκκίνηση MagiskHide …</string>
|
||||||
<string name="no_magisksu_title">Δεν χρισημοποιείται το MagiskSU!</string>
|
<string name="no_magisksu_title">Δεν χρησιμοποιείται το MagiskSU!</string>
|
||||||
<string name="no_magisksu_msg">Δεν είστε rooted με το MagiskSU, η χρήση του MagiskHide μόνο μπορεί να μην είναι αρκετή!\nΔεν υποτηρίζεται επισήμως, και θα χρειαζόσασταν πρόσθετα εργαλεία (π.χ. suhide) για να περάσετε το Safety Net.</string>
|
<string name="no_magisksu_msg">Δεν είστε rooted με το MagiskSU, η χρήση του MagiskHide μόνο μπορεί να μην είναι αρκετή!\nΔεν υποτηρίζεται επισήμως, και θα χρειαζόσασταν πρόσθετα εργαλεία (π.χ. suhide) για να περάσετε το Safety Net.</string>
|
||||||
<string name="understand">Καταλαβαίνω</string>
|
<string name="understand">Καταλαβαίνω</string>
|
||||||
<string name="process_error">Σφάλμα διαδικασίας</string>
|
<string name="process_error">Σφάλμα διαδικασίας</string>
|
||||||
@@ -141,7 +141,7 @@
|
|||||||
<string name="settings_core_only_summary">Ενεργοποίηση μόνο των λειτουργιών πυρήνα, όλες οι ενότητες δεν θα ενεργοποιηθούν. Τα MagiskSU, MagiskHide, και systemless hosts θα παραμείνουν ενεργά</string>
|
<string name="settings_core_only_summary">Ενεργοποίηση μόνο των λειτουργιών πυρήνα, όλες οι ενότητες δεν θα ενεργοποιηθούν. Τα MagiskSU, MagiskHide, και systemless hosts θα παραμείνουν ενεργά</string>
|
||||||
<string name="settings_magiskhide_summary">Κρύβει το Magisk από διάφορες ανιχνεύσεις</string>
|
<string name="settings_magiskhide_summary">Κρύβει το Magisk από διάφορες ανιχνεύσεις</string>
|
||||||
<string name="settings_busybox_title">Ενεργοποίηση BusyBox</string>
|
<string name="settings_busybox_title">Ενεργοποίηση BusyBox</string>
|
||||||
<string name="settings_busybox_summary">Bind mount Magisk\'s built-in busybox to xbin</string>
|
<string name="settings_busybox_summary">Bind προσάρτηση του ενσωματωμένου busybox του Magisk στο xbin</string>
|
||||||
<string name="settings_hosts_title">Systemless hosts</string>
|
<string name="settings_hosts_title">Systemless hosts</string>
|
||||||
<string name="settings_hosts_summary">Υποστήριξη Systemless hosts για εφαρμογές Adblock</string>
|
<string name="settings_hosts_summary">Υποστήριξη Systemless hosts για εφαρμογές Adblock</string>
|
||||||
|
|
||||||
@@ -155,7 +155,7 @@
|
|||||||
<string name="settings_su_request_60">60 δευτερόλεπτα</string>
|
<string name="settings_su_request_60">60 δευτερόλεπτα</string>
|
||||||
<string name="superuser_access">Πρόσβαση Υπερχρήστη</string>
|
<string name="superuser_access">Πρόσβαση Υπερχρήστη</string>
|
||||||
<string name="auto_response">Αυτόματη Απόκριση</string>
|
<string name="auto_response">Αυτόματη Απόκριση</string>
|
||||||
<string name="request_timeout">Request Timeout</string>
|
<string name="request_timeout">Timeout Αιτήματος</string>
|
||||||
<string name="superuser_notification">Ειδοποίηση Υπερχρήστη</string>
|
<string name="superuser_notification">Ειδοποίηση Υπερχρήστη</string>
|
||||||
<string name="request_timeout_summary">%1$s δευτερόλεπτα</string>
|
<string name="request_timeout_summary">%1$s δευτερόλεπτα</string>
|
||||||
<string name="settings_su_reauth_title">Επανα-πιστοποίηση μετά από αναβάθμιση</string>
|
<string name="settings_su_reauth_title">Επανα-πιστοποίηση μετά από αναβάθμιση</string>
|
||||||
@@ -200,13 +200,13 @@
|
|||||||
<string name="su_allow_toast">Στο %1$s παραχορούνται δικαιώματα υπερχρήστη</string>
|
<string name="su_allow_toast">Στο %1$s παραχορούνται δικαιώματα υπερχρήστη</string>
|
||||||
<string name="su_deny_toast">Στο %1$s απορρίπτονται τα δικαιώματα υπερχρήστη</string>
|
<string name="su_deny_toast">Στο %1$s απορρίπτονται τα δικαιώματα υπερχρήστη</string>
|
||||||
<string name="no_apps_found">Δεν βρέθηκαν εφαρμογές</string>
|
<string name="no_apps_found">Δεν βρέθηκαν εφαρμογές</string>
|
||||||
<string name="su_snack_grant">Τα δικαιώματα υπερχρήστη του %1$s παραχορούνται</string>
|
<string name="su_snack_grant">Παραχορούνται δικαιώματα υπερχρήστη στο %1$s</string>
|
||||||
<string name="su_snack_deny">Τα δικαιώματα υπερχρήστη του %1$s απορρίπτονται</string>
|
<string name="su_snack_deny">Δεν παραχορούνται δικαιώματα υπερχρήστη στο %1$s</string>
|
||||||
<string name="su_snack_notif_on">Οι ειδοποιήσεις του %1$s είναι ενεργοποιημένες</string>
|
<string name="su_snack_notif_on">Οι ειδοποιήσεις του %1$s είναι ενεργοποιημένες</string>
|
||||||
<string name="su_snack_notif_off">Οι ειδοποιήσεις του %1$s είναι απενεργοποιημένες</string>
|
<string name="su_snack_notif_off">Οι ειδοποιήσεις του %1$s είναι απενεργοποιημένες</string>
|
||||||
<string name="su_snack_log_on">Η καταγραφή του %1$s είναι ενεργοποιημένη</string>
|
<string name="su_snack_log_on">Η καταγραφή του %1$s είναι ενεργοποιημένη</string>
|
||||||
<string name="su_snack_log_off">Η καταγραφή του %1$s είναι απενεργοποιημένη</string>
|
<string name="su_snack_log_off">Η καταγραφή του %1$s είναι απενεργοποιημένη</string>
|
||||||
<string name="su_snack_revoke">%1$s δικαιώματα ανακαλούνται</string>
|
<string name="su_snack_revoke">Τα δικαιώματα του %1$s ανακαλούνται</string>
|
||||||
<string name="su_revoke_title">Ανάκληση?</string>
|
<string name="su_revoke_title">Ανάκληση?</string>
|
||||||
<string name="su_revoke_msg">Επιβεβαίωση για ανάκληση δικαιωμάτων %1$s;</string>
|
<string name="su_revoke_msg">Επιβεβαίωση για ανάκληση δικαιωμάτων %1$s;</string>
|
||||||
<string name="toast">Toast</string>
|
<string name="toast">Toast</string>
|
||||||
|
Reference in New Issue
Block a user