8taizi 发表于 2018-7-30 11:36

【Xposed】派派自动收作物分析,第一次写安卓软件

本帖最后由 8taizi 于 2018-7-30 11:45 编辑

以前玩农场的小孩长大了(默认你们是知道要实现什么功能了)file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image002.gif这里有两种方式可以触发收获动作,1)按住屏幕划过你要收的作物2)
摇一摇收取这里我用的是第二种 Apk改之理打开APKfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image004.jpg,发现被加固了,打开ApkScan-PKID确认一下file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image006.jpg
这里我用的是论坛https://www.52pojie.cn/thread-758726-1-1.html的工具得到dexfile:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image008.jpg   
开始写Xposed插件上面说到我们是通过摇一摇来调用的所以就直接模拟摇一摇file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image010.jpg
打包运行发现报会出现java.lang.NoSuchMethodError。现在的APP常用的会分dex(脱壳后可以看到),这种需要先去hook Application的attach方法,然后再hook第二个dex的方法,其实更像是手动去找,为什么需要attach,因为attach方法的参数里带有上下文的context,如果用xposed去hook非默认dex文件的类就会发生ClassNotFoundError,要解决这个问题,我们需要拿到对应dex文件的上下文环境。
解决方案:
XposedHelpers.findAndHookMethod(Application.class, "attach", Context.class, new XC_MethodHook() {
                @Override
                protected void afterHookedMethod(MethodHookParam param) throws Throwable {
                  ClassLoader cl = ((Context)param.args).getClassLoader();
                  Class<?> hookclass = null;
                  try {
                        hookclass = cl.loadClass("xxx.xxx.xxx");
                  } catch (Exception e) {
                        Log.e("dujinyang", "查询报错"+e.getMessage());
                        return;
                  }
                  Log.i("dujinyang", "查询成功");
                  XposedHelpers.findAndHookMethod(hookclass, "xxx", new XC_MethodHook(){
                        //进行hook操作
                  });
                }
            });
模拟完摇一摇后当有作物成熟后会弹出一个activity 我们HOOK 他的onCreate拿到View对象,在调用onClick(view)完成收货动作file:///C:/Users/ADMINI~1/AppData/Local/Temp/msohtmlclip1/01/clip_image012.jpg

此方法只能在App保持前台时才可以使用
**** Hidden Message ***** 52pojie首发转载请标明,请勿用于非法用途,否则后果作者概不负责

zhongshao 发表于 2018-12-26 11:18

app上线更新或者平时调试xposed都会经常性的出现 does not exist 然后可能需要用户去重新点击勾选然后重启,就显得很不友好,这是什么问题和怎么解决呢,感谢大佬

8taizi 发表于 2018-8-1 15:17

stefma 发表于 2018-8-1 14:58
HOOK 他的onCreate拿到View对象,在调用onClick(view)完成

对的,现在不支持后台运行,有兴趣一起研究讨论下吗

fangdao 发表于 2018-7-30 11:41

乱码。。。

狸追 发表于 2018-7-30 11:45

什么东西呢?

凩茻MUMU 发表于 2018-7-30 11:46

这收的是啥作物?
看不太明白

8taizi 发表于 2018-7-30 11:46

fangdao 发表于 2018-7-30 11:41
乱码。。。

在word里写好复制过来样式都没了,现在改好了

8taizi 发表于 2018-7-30 11:46

狸追 发表于 2018-7-30 11:45
什么东西呢?

在word里写好复制过来样式都没了,现在改好了

8taizi 发表于 2018-7-30 11:47

凩茻MUMU 发表于 2018-7-30 11:46
这收的是啥作物?
看不太明白

类似以前的qq农场

楚狂客 发表于 2018-7-30 11:50

写个支付宝收能量的吧

q740667629 发表于 2018-7-30 11:54

更新分享。。

煜上青天览明月 发表于 2018-7-30 11:59

不错不错,楼主继续加油
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 【Xposed】派派自动收作物分析,第一次写安卓软件