0%

一 SharedPreferences数据保存
putStringSet:一个key对应多个字段使用

1
2
3
 values = preferences.getStringSet(CommonName.PACKAGE_NAME, values);
//bug说明: Xposed插件杀掉后,再次获取数据时,发现只能获取到一个数据
edit.clear();

二 方法说明

1
2
3
4
5
6
7
//方法使用
XposedHelpers.findAndHookMethod()
//成员变量
XposedHelpers.setObjectField()
//静态成员变量(两种都可以)
XposedHelpers.setObjectField()
XposedHelpers.setStaticObjectField()

三 代码

1
2
3
4
5
6
7
8
9
10
//hook成员变量
XposedHelpers.findAndHookMethod("com.lrxc.test.MainActivity", lpparam.classLoader, "getString", String.class
, new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
super.beforeHookedMethod(param);
//核心方法
XposedHelpers.setStaticObjectField(param.thisObject.getClass(), "li", "智障");
}
});
1
2
3
4
//hook静态成员变量,不需要借助findAndHookMethod,直接反射
Class<?> aClass = lpparam.classLoader.loadClass("android.os.Build");
//修改手机厂商
XposedHelpers.setStaticObjectField(aClass, "BRAND", vendor);