xposed get owner(myself) activity context
我们知道的是
xposed中的hook文件和activity运行的不在一个进程。
不能直接操作自己,而且他们还在不同的路径中
共享数据还需要 MultiprocessSharedPreferences 等模块
当然通过hook自己是可以获取到的,获取到以后,把它存在公共变量,以便其它各方法调用
有什么用呢?
获取自身activity 的app所在路径
共享 SharedPreferences 共享数据
操作广播、通知、让自己不被杀后台等等。
取context代码如下:
public Context Main_context;
public void handleLoadPackage(final XC_LoadPackage.LoadPackageParam lpparam) throws Exception {
if(Main_context !=null){
XposedBridge.log("测试取包名" + Main_context.getPackageName());
}
XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
super.afterHookedMethod(param);
Main_context = (Context) param.args[0];
XposedBridge.log("通过方法attach取得包名"
+Main_context.getPackageName());
}
});
}