Xposedモジュールスレ Part4
■ このスレッドは過去ログ倉庫に格納されています
0690名無しさん@お腹いっぱい。
2014/07/25(金) 15:32:52.93ID:VNLSlDQG難読化されてるから、バージョンが変わると動かなくなるかもしれないから、apkでは面倒見切れないので
if (!"com.google.android.apps.maps".equals(lpparam.packageName))
return;
findAndHookMethod("com.google.android.apps.gmm.directions.DirectionsStartPageFragment", lpparam.classLoader, "onCreate", Bundle.class, new XC_MethodHook() {
@Override
protected void afterHookedMethod(MethodHookParam param) throws Throwable {
// ver 8.2.0用
Object bd = XposedHelpers.getObjectField(param.thisObject, "b");
/* cpを作る
gm = bd.d()
xm = bd.e()
cx = com.google.android.apps.gmm.directions.e.b.a(true, gm);
cp = new cp(cx);
cp.a(com.google.android.apps.gmm.directions.e.b.a(gm, true, xm));
有料道路を使わないオプションをオン
n = n.a(1);
cp.b.put(n, Integer.valueOf(1));
恐らくxmにcpを反映したxm2を作成
xm2 = com.google.android.apps.gmm.directions.e.b.a(cp.b, xm);
出来たxm2を設定する
bd.a(xm2) */
Class<?> directions_e_b = XposedHelpers.findClass("com.google.android.apps.gmm.directions.e.b", lpparam.classLoader);
Class<?> directions_cp = XposedHelpers.findClass("com.google.android.apps.gmm.directions.cp", lpparam.classLoader);
Class<?> directions_e_n = XposedHelpers.findClass("com.google.android.apps.gmm.directions.e.n", lpparam.classLoader);
Object gm = XposedHelpers.callMethod(bd, "d");
Object xm = XposedHelpers.callMethod(bd, "e");
Object cx = XposedHelpers.callStaticMethod(directions_e_b, "a", true, gm);
Object cp = XposedHelpers.newInstance(directions_cp, cx);
Object cpa = XposedHelpers.callStaticMethod(directions_e_b, "a", gm, true, xm);
XposedHelpers.callMethod(cp, "a", cpa);
Object cp_b = XposedHelpers.getObjectField(cp, "b");
Object n = XposedHelpers.callStaticMethod(directions_e_n, "a", 1);
XposedHelpers.callMethod(cp_b, "put", n, Integer.valueOf(1));
Object xm2 = XposedHelpers.callStaticMethod(directions_e_b, "a", cp_b, xm);
XposedHelpers.callMethod(bd, "a", xm2);
}
});
■ このスレッドは過去ログ倉庫に格納されています