X-Git-Url: https://git.ralfj.de/noFUDroid.git/blobdiff_plain/d05623c097225f987c208c9dd29620bfc62f8177..b333824c0fc659a90823614625663f92f878a839:/app/src/main/java/it/skarafaz/xposed/nwmonblocker/Mod.java diff --git a/app/src/main/java/it/skarafaz/xposed/nwmonblocker/Mod.java b/app/src/main/java/it/skarafaz/xposed/nwmonblocker/Mod.java index bd2818c..cae346f 100644 --- a/app/src/main/java/it/skarafaz/xposed/nwmonblocker/Mod.java +++ b/app/src/main/java/it/skarafaz/xposed/nwmonblocker/Mod.java @@ -1,35 +1,23 @@ package it.skarafaz.xposed.nwmonblocker; -import de.robv.android.xposed.IXposedHookLoadPackage; +import de.robv.android.xposed.IXposedHookZygoteInit; import de.robv.android.xposed.XC_MethodReplacement; -import de.robv.android.xposed.XposedBridge; import de.robv.android.xposed.XposedHelpers; -import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam; -public class Mod implements IXposedHookLoadPackage { - // Just a helper function, useful to figure out package names - private void tryToLoad(String className, ClassLoader loader) { - try { - XposedHelpers.findClass(className, loader); - XposedBridge.log(" Found " + className); - } - catch (Throwable t) {} - } +/* "Network May Be Monitored" blocker for Android 4.4. */ + +public class Mod implements IXposedHookZygoteInit { + private static final String CLASS_DEVICE_POLICY_MANAGER = "android.app.admin.DevicePolicyManager"; + + @Override + public void initZygote(StartupParam startupParam) throws Throwable { + final Class devicePolicyManager = XposedHelpers.findClass(CLASS_DEVICE_POLICY_MANAGER, null); - public void handleLoadPackage(LoadPackageParam lpparam) throws Throwable { - if (!lpparam.packageName.equals("android")) - return; - - final Class userHandle = XposedHelpers.findClass("android.os.UserHandle", lpparam.classLoader); - final Class notifyTask = XposedHelpers.findClass("com.android.server.devicepolicy.DevicePolicyManagerService$MonitoringCertNotificationTask", lpparam.classLoader); - - XposedHelpers.findAndHookMethod(notifyTask, "manageNotification", userHandle, - new XC_MethodReplacement() { - @Override - protected Object replaceHookedMethod(MethodHookParam methodHookParam) throws Throwable { - XposedBridge.log("Not showing FUD notification"); - return null; - } + XposedHelpers.findAndHookMethod(devicePolicyManager, "hasAnyCaCertsInstalled", new XC_MethodReplacement() { + @Override + protected Object replaceHookedMethod(MethodHookParam methodHookParam) throws Throwable { + return false; + } }); } }