@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { try { Class<?> c = findClass("android.media.MediaScanner$MyMediaScannerClient", null); XposedBridge.hookAllMethods(c, "endFile", new XC_MethodHook() { @Override protected void beforeHookedMethod(MethodHookParam param) throws Throwable { String mAlbumArtist = (String) XposedHelpers.getObjectField(param.thisObject, "mAlbumArtist"); if (mAlbumArtist != null && mAlbumArtist.length() != 0) XposedHelpers.setObjectField(param.thisObject, "mArtist", mAlbumArtist); } }); } catch (Throwable t) { XposedBridge.log(t); } }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { XposedBridge.log("CleanLockscreen initZygote"); if(android.os.Build.VERSION.SDK_INT<=20) packageName = "com.android.keyguard"; else packageName = "com.android.systemui"; MODULE_PATH = startupParam.modulePath; if(MODULE_PATH == null){ XposedBridge.log("CleanLockscreen modulePath is null!"); } prefs = new XSharedPreferences(CleanLockscreen.class.getPackage().getName()); // Remove emergency call text if (prefs.getBoolean("remove_emergency", false)) { XResources.setSystemWideReplacement("android:string/lockscreen_emergency_call", ""); } XposedBridge.log("CleanLockscreen initZygote complete"); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { // XResources.setSystemWideReplacement("android", "bool", "config_unplugTurnsOnScreen", false); MODULE_PATH = startupParam.modulePath; sModRes = XModuleResources.createInstance(MODULE_PATH, null); }
public void init(IXposedHookZygoteInit.StartupParam startupParam, String resName, HashSet blocklistName) throws IOException { String MODULE_PATH = startupParam.modulePath; Resources res = XModuleResources.createInstance(MODULE_PATH, null); byte[] array = XposedHelpers.assetAsByteArray(res, resName); String decoded = decodeString(resName, array); String[] sUrls = decoded.split("\n"); Collections.addAll(blocklistName, sUrls); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { // file settings Shared.settingsStorage = SettingsStorage.getSettingsStorage(); if (!Settings.simulateNoise) { XposedBridge.log("!!! Noise deactivated. This is not a good idea."); } GPS.initZygote(startupParam); if (Settings.HOOK_SENSORS) { Sensor.initZygote(startupParam); } }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { loadPrefs(); /* // Tried changing dark theme as white, didn't work XResources.setSystemWideReplacement("android", "color", "primary_text_default_material_dark", Color.parseColor("#de000000")); XResources.setSystemWideReplacement("android", "color", "secondary_text_default_material_dark", Color.parseColor("#8a000000")); */ if(DISABLE_EUI) { XResources.setSystemWideReplacement("android", "dimen", "status_bar_icon_size", new XResources.DimensionReplacement(20, TypedValue.COMPLEX_UNIT_DIP)); } }
@SuppressWarnings("deprecation") @Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { prefs = AndroidAppHelper.getSharedPreferencesForPackage(MY_PACKAGE_NAME, Common.PREFS, Context.MODE_PRIVATE); //prefs = new XSharedPreferences(MY_PACKAGE_NAME, Common.PREFS).makeWorldReadable(); MODULE_PATH = startupParam.modulePath; mDebugMode = prefs.getBoolean(Common.PREF_DEBUG_MODE, false); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { XSharedPreferences enabled_modules = new XSharedPreferences(Commons.XPOSED_INSTALLER_PACKAGE, "enabled_modules"); enabled_modules.makeWorldReadable(); for (String s : enabled_modules.getAll().keySet()) { if (enabled_modules.getInt(s, 0) == 1) { listeners.put(s, null); } } prefs = new XSharedPreferences(Commons.MODULE_PACKAGE); prefs.makeWorldReadable(); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam param) throws Throwable { SystemUIResources.initFlags(); MODULE_PATH = param.modulePath; prefs = new XSharedPreferences(XposedMain.class.getPackage().getName()); prefs.makeWorldReadable(); if(JELLYBEAN && prefs.getBoolean("key_hide_shortcuts", false)) { XResources.setSystemWideReplacement("android", "drawable", "ic_lockscreen_camera_hint", 0); XResources.setSystemWideReplacement("android", "drawable", "ic_lockscreen_other_widgets_hint", 0); } }
public static void init(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { XSharedPreferences pre = new XSharedPreferences(BuildConfig.APPLICATION_ID, "xpnavbar"); pre.makeWorldReadable(); String json = pre.getString(ConstantStr.SHORT_CUT_DATA, ""); XpLog.i("short_cut_data " + json); expandStatusBarWithRoot = pre.getBoolean(SPUtil.ROOT_DOWN, false); clearMenLevel = pre.getInt(SPUtil.CLEAR_MEM_LEVEL, 200); //获取主导行栏小点的位置 homePointPosition = pre.getInt(ConstantStr.HOME_POINT, 0); chameleonNavbar = pre.getBoolean(SPUtil.CHAMELEON_NAVBAR, false); rootDown = pre.getBoolean(SPUtil.ROOT_DOWN, false); vibrate = pre.getBoolean(SPUtil.NAVBAR_VIBRATE, false); //获取快捷按钮设置数据 Gson gson = new Gson(); //在第一次激活重新启动的时候,可能因为没有设置任何快捷按钮,导致这里报错 try { shortCutList = gson.fromJson(json, ShortCutData.class).getData(); } catch (Exception e) { shortCutList = new ArrayList<>(); } //获取图片缩放大小 iconScale = pre.getInt(ConstantStr.ICON_SIZE, 40); navbarHeight = pre.getInt(SPUtil.NAVBAR_HEIGHT, 100); //加载图片资源文件 Resources res = XModuleResources.createInstance(startupParam.modulePath, null); byte[] backImg = XposedHelpers.assetAsByteArray(res, "back.png"); byte[] clearMenImg = XposedHelpers.assetAsByteArray(res, "clear_mem.png"); byte[] clearNotificationImg = XposedHelpers.assetAsByteArray(res, "clear_notification.png"); byte[] downImg = XposedHelpers.assetAsByteArray(res, "down.png"); byte[] lightImg = XposedHelpers.assetAsByteArray(res, "light.png"); byte[] quickNoticesImg = XposedHelpers.assetAsByteArray(res, "quick_notices.png"); byte[] screenOffImg = XposedHelpers.assetAsByteArray(res, "screenoff.png"); // byte[] upImg = XposedHelpers.assetAsByteArray(res, "up.png"); byte[] volume = XposedHelpers.assetAsByteArray(res, "volume.png"); byte[] smallPonit = XposedHelpers.assetAsByteArray(res, "small_point.png"); byte[] home = XposedHelpers.assetAsByteArray(res, "ic_home.png"); byte[] startActs = XposedHelpers.assetAsByteArray(res, "start_acts.png"); byte[] playMusic = XposedHelpers.assetAsByteArray(res, "ic_music.png"); byte[] pauseMusic = XposedHelpers.assetAsByteArray(res, "ic_pause.png"); byte[] previousMusic = XposedHelpers.assetAsByteArray(res, "ic_previous.png"); byte[] nextMusic = XposedHelpers.assetAsByteArray(res, "ic_next.png"); byte[] scanWeChat = XposedHelpers.assetAsByteArray(res, "wechat_qr.png"); byte[] scanAlipay = XposedHelpers.assetAsByteArray(res, "alipay_qr.png"); byte[] screenshot = XposedHelpers.assetAsByteArray(res, "ic_image.png"); byte[] navBack = XposedHelpers.assetAsByteArray(res, "ic_sysbar_back.png"); byte[] navHome = XposedHelpers.assetAsByteArray(res, "ic_sysbar_home.png"); byte[] navRecent = XposedHelpers.assetAsByteArray(res, "ic_sysbar_recent.png"); byte[] clipBoard = XposedHelpers.assetAsByteArray(res, "ic_clipboard.png"); byte[] command = XposedHelpers.assetAsByteArray(res, "ic_command.png"); byte[] navHide = XposedHelpers.assetAsByteArray(res, "ic_nav_down.png"); mapImgRes.put(ConstantStr.FUNC_BACK_CODE, backImg); mapImgRes.put(ConstantStr.FUNC_CLEAR_MEM_CODE, clearMenImg); mapImgRes.put(ConstantStr.FUNC_CLEAR_NOTIFICATION_CODE, clearNotificationImg); mapImgRes.put(ConstantStr.FUNC_DOWN_CODE, downImg); mapImgRes.put(ConstantStr.FUNC_LIGHT_CODE, lightImg); mapImgRes.put(ConstantStr.FUNC_QUICK_NOTICE_CODE, quickNoticesImg); mapImgRes.put(ConstantStr.FUNC_SCREEN_OFF_CODE, screenOffImg); // mapImgRes.put(ConstantStr.UP, upImg); mapImgRes.put(ConstantStr.FUNC_VOLUME_CODE, volume); mapImgRes.put(ConstantStr.FUNC_SMALL_POINT_CODE, smallPonit); mapImgRes.put(ConstantStr.FUNC_HOME_CODE, home); mapImgRes.put(ConstantStr.FUNC_START_ACTS_CODE, startActs); mapImgRes.put(ConstantStr.FUNC_PLAY_MUSIC_CODE, playMusic); mapImgRes.put(ConstantStr.FUNC_NEXT_PLAY_CODE, nextMusic); mapImgRes.put(ConstantStr.FUNC_PREVIOUS_PLAY_CODE, previousMusic); mapImgRes.put(ConstantStr.FUNC_WECHAT_SACNNER_CODE, scanWeChat); mapImgRes.put(ConstantStr.FUNC_ALIPAY_SACNNER_CODE, scanAlipay); mapImgRes.put(ConstantStr.FUNC_SCREEN_SHOT_CODE, screenshot); mapImgRes.put(ConstantStr.FUNC_NAV_BACK_CODE, navBack); mapImgRes.put(ConstantStr.FUNC_NAV_HOME_CODE, navHome); mapImgRes.put(ConstantStr.FUNC_NAV_RECENT_CODE, navRecent); mapImgRes.put(ConstantStr.FUNC_CLIPBOARD_CODE, clipBoard); mapImgRes.put(ConstantStr.FUNC_COMMAND_CODE, command); mapImgRes.put(ConstantStr.FUNC_NAV_HIDE_CODE, navHide); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { prefs = new XSharedPreferences(AssistantEnabler.class.getPackage().getName(), "preferences"); prefs.makeWorldReadable(); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { XResources.setSystemWideReplacement("android", "bool", "config_enableAutoPowerModes", true); }
public static void initZygote(final IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { // hook nothing globally }
public static void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { /** Shout out to abusalimov for his Light Sensor fix that inspired disableproxsensor. */ }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { refreshSharedPreferences(false); XposedBridge.log("Module Loaded (Debug Mode: " + (isDebugMode() ? "ON" : "OFF") + ")"); }
public void initZygote(IXposedHookZygoteInit.StartupParam paramStartupParam) throws Throwable { }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { installPackageHook = new XC_MethodHook() { @Override public void beforeHookedMethod(MethodHookParam param) throws Throwable { mContext = AndroidAppHelper.currentApplication(); mContext = (Context) XposedHelpers.getObjectField(param.thisObject, "mContext"); boolean isInstallStage = "installStage".equals(param.method.getName()); int flags = 0; int id = 0; if (isInstallStage) { try { id = 4; flags = (Integer) XposedHelpers.getObjectField(param.args[id], "installFlags"); XposedBridge.log("PreventADBInstall: Hook Flags Success!"); } catch (Exception e) { XposedBridge.log(e); } } else { try { id = Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1 ? 2 : 1; flags = (Integer) param.args[id]; XposedBridge.log("PreventADBInstall: Hook Flags Success!"); } catch (Exception e) { XposedBridge.log(e); } } if (isInstallStage) { Object sessions = param.args[id]; XposedHelpers.setIntField(sessions, "installFlags", flags); param.args[id] = sessions; } else { param.args[id] = flags; } if ((getCallingUid() == 2000) || (getCallingUid() == 0)) { param.setResult(null); XposedBridge.log("PreventADBInstall: Block Success!"); Looper.prepare(); Toast.makeText(mContext, "拦截 ADB 安装成功!", Toast.LENGTH_LONG).show(); Looper.loop(); return; } } }; }
public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { sPrefs = new XSharedPreferences(MY_PACKAGE_NAME, PREFS); sPrefs.makeWorldReadable(); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { MODULE_PATH = startupParam.modulePath; }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { loadPrefs(); PackagePermissions.initHooks(); }
@Override public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable { prefs = new XSharedPreferences(PACKAGE_NAME, Misc.PREFERENCE); isQSSupportted = android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR1; }