Update strings

This commit is contained in:
topjohnwu
2019-10-29 07:36:50 -04:00
parent 321d11c2c6
commit f7aa451591
10 changed files with 141 additions and 102 deletions

View File

@@ -15,8 +15,6 @@ import com.topjohnwu.magisk.utils.DynamicClassLoader;
import java.io.File;
import java.lang.reflect.Method;
import static com.topjohnwu.magisk.DownloadActivity.TAG;
public class DelegateApplication extends Application {
static File MANAGER_APK;
@@ -36,7 +34,7 @@ public class DelegateApplication extends Application {
if (Build.VERSION.SDK_INT >= 28) {
setUpDynAPK();
} else {
MANAGER_APK = new File(base.getCacheDir(), "manager.apk");
MANAGER_APK = new File(base.getCacheDir(), "app.apk");
}
}
@@ -72,7 +70,7 @@ public class DelegateApplication extends Application {
factory.delegate = (AppComponentFactory) df;
factory.loader = cl;
} catch (Exception e) {
Log.e(TAG, "dyn load", e);
Log.e(getClass().getSimpleName(), "", e);
MANAGER_APK.delete();
}
}

View File

@@ -8,7 +8,6 @@ import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.ContentProvider;
import android.content.Intent;
import android.util.Log;
import com.topjohnwu.magisk.dummy.DummyActivity;
import com.topjohnwu.magisk.dummy.DummyProvider;
@@ -16,8 +15,6 @@ import com.topjohnwu.magisk.dummy.DummyReceiver;
import com.topjohnwu.magisk.dummy.DummyService;
import com.topjohnwu.magisk.obfuscate.Mapping;
import static com.topjohnwu.magisk.DownloadActivity.TAG;
@SuppressLint("NewApi")
public class DelegateComponentFactory extends AppComponentFactory {
@@ -27,14 +24,12 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override
public Application instantiateApplication(ClassLoader cl, String className) {
if (loader == null) loader = cl;
Log.d(TAG, className);
return new DelegateApplication(this);
}
@Override
public Activity instantiateActivity(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null)
return delegate.instantiateActivity(loader, Mapping.get(className), intent);
return create(className, DummyActivity.class);
@@ -43,7 +38,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override
public BroadcastReceiver instantiateReceiver(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null)
return delegate.instantiateReceiver(loader, Mapping.get(className), intent);
return create(className, DummyReceiver.class);
@@ -52,7 +46,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override
public Service instantiateService(ClassLoader cl, String className, Intent intent)
throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (delegate != null)
return delegate.instantiateService(loader, Mapping.get(className), intent);
return create(className, DummyService.class);
@@ -61,7 +54,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
@Override
public ContentProvider instantiateProvider(ClassLoader cl, String className)
throws ClassNotFoundException, IllegalAccessException, InstantiationException {
Log.d(TAG, className);
if (loader == null) loader = cl;
if (delegate != null)
return delegate.instantiateProvider(loader, Mapping.get(className));
@@ -73,7 +65,6 @@ public class DelegateComponentFactory extends AppComponentFactory {
*/
private <T> T create(String name, Class<? extends T> dummy)
throws InstantiationException, IllegalAccessException {
Log.d(TAG, "create " + name);
try {
return (T) loader.loadClass(name).newInstance();
} catch (IllegalAccessException | InstantiationException | ClassNotFoundException ignored) {

View File

@@ -11,31 +11,33 @@ import android.util.Log;
import com.topjohnwu.magisk.net.ErrorHandler;
import com.topjohnwu.magisk.net.Networking;
import com.topjohnwu.magisk.net.ResponseListener;
import com.topjohnwu.magisk.obfuscate.RawData;
import com.topjohnwu.magisk.utils.APKInstall;
import org.json.JSONException;
import org.json.JSONObject;
import static android.R.string.no;
import static android.R.string.ok;
import static android.R.string.yes;
import static com.topjohnwu.magisk.DelegateApplication.MANAGER_APK;
public class DownloadActivity extends Activity {
static final String TAG = "MMStub";
private static final String URL =
BuildConfig.DEV_CHANNEL != null ? BuildConfig.DEV_CHANNEL :
"https://raw.githubusercontent.com/topjohnwu/magisk_files/" +
(BuildConfig.DEBUG ? "canary/debug.json" : "master/stable.json");
RawData.urlBase() + (BuildConfig.DEBUG ? RawData.canary() : RawData.stable());
private String apkLink;
private ErrorHandler err = (conn, e) -> {
Log.e(TAG, "network error", e);
Log.e(getClass().getSimpleName(), "", e);
finish();
};
private void showDialog() {
ProgressDialog.show(this,
getString(R.string.dling),
getString(R.string.dling) + " " + getString(R.string.app_name),
RawData.dling(),
RawData.dling() + " " + RawData.appName(),
true);
}
@@ -58,7 +60,9 @@ public class DownloadActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
RawData.res = getResources();
Networking.init(this);
if (Networking.checkNetworkStatus(this)) {
Networking.get(URL)
.setErrorHandler(err)
@@ -66,9 +70,9 @@ public class DownloadActivity extends Activity {
} else {
new AlertDialog.Builder(this)
.setCancelable(false)
.setTitle(R.string.app_name)
.setMessage(R.string.no_internet_msg)
.setNegativeButton(android.R.string.ok, (d, w) -> finish())
.setTitle(RawData.appName())
.setMessage(RawData.no_internet_msg())
.setNegativeButton(ok, (d, w) -> finish())
.show();
}
}
@@ -82,10 +86,10 @@ public class DownloadActivity extends Activity {
apkLink = manager.getString("link");
new AlertDialog.Builder(DownloadActivity.this)
.setCancelable(false)
.setTitle(R.string.app_name)
.setMessage(R.string.upgrade_msg)
.setPositiveButton(android.R.string.yes, (d, w) -> dlAPK())
.setNegativeButton(android.R.string.no, (d, w) -> finish())
.setTitle(RawData.appName())
.setMessage(RawData.upgrade_msg())
.setPositiveButton(yes, (d, w) -> dlAPK())
.setNegativeButton(no, (d, w) -> finish())
.show();
} catch (JSONException e) {
finish();

View File

@@ -0,0 +1,38 @@
package com.topjohnwu.magisk.obfuscate;
import android.content.res.Resources;
import com.topjohnwu.magisk.R;
public class RawData {
public static Resources res;
public static String appName() {
return "Magisk Manager";
}
public static String urlBase() {
return "https://raw.githubusercontent.com/topjohnwu/magisk_files/";
}
public static String canary() {
return "canary/debug.json";
}
public static String stable() {
return "master/stable.json";
}
public static String no_internet_msg() {
return res.getString(R.string.no_internet_msg);
}
public static String upgrade_msg() {
return res.getString(R.string.upgrade_msg);
}
public static String dling() {
return res.getString(R.string.dling);
}
}

View File

@@ -1,4 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="upgrade_msg">Fes una actualització total de Magisk Manager per finalitzar l\'instalació. Descarregar i instalar?</string>
<string name="no_internet_msg">Si us plau, connecta\'t a internet! Es necessari fer una actualització total de Magisk Manager.</string>
<string name="dling">Baixant</string>
</resources>

View File

@@ -1,4 +1,5 @@
<resources>
<string name="upgrade_msg">Обновите Magisk Manager для завершения установки. Загрузить и установить?</string>
<string name="no_internet_msg">Пожалуйста, подключитесь к интернету! Требуется обновление Magisk Manager.</string>
<string name="dling">Загрузка</string>
</resources>

View File

@@ -1,4 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name" translatable="false">Magisk Manager</string>
</resources>