技术研究之《永不言弃3世界》解锁逆向方法
本教程为黑域基地原创,基于上次我们首发永不言弃3:世界内购解锁版 http://www.hybase.com/shouji/androidyx/1526.html 所以出个学习教程,授人以鱼不如授人以渔!多看逆向思路方法是有助于自己在逆向技术上的提升,喜欢逆向反编译的黑域小伙伴可以认真看下!
开始前:准备工具
1.永不言弃3世界.apk
2.MT管理器
---------开始破解-----------
1.打开我们准备的MT管理器,找到根目录DATA
2.找到APP目录,打开!
3.然后找到永不言弃3世界APP,并打开!
4.点击base.apk 复制到左边
5.然后点击一下再点击查看
6.classes.dex我们点击进入。
7.选择Dex编辑器
8.点击右上角搜索常量
9.输入onpaysuccess
10. 看到有4个方法,我们点击进入 sdk/pay/c 这个包
11.选择反编译,如果没有反编译可跳过
12.分析java源代码
1.根据我们的关键字 onPaySuccess (支付成功)onPayFailed (支付失败) onPayCancel (支付取消)
2.看到如下有if判断
TextUtils.isEmpty(string) 是判断当前传进来的string是否为空
与 !String.equalsIgnoreCase("success") 判断不等于success
则调用 payCallback.onPayCancel();方法 否则 调用 onPaySuccess();方法
3.根据上面的判断,我们得知,判断跳onPayCancel与onPayFailed的全部删掉。
4.判断数值的 01 00 -1 三个数值,逻辑 1:成功 0:取消 -1:失败 我们只保留 1:成功 其余删掉
5.最后的判断数值 9000是支付宝支付成功的返回值,8000则是失败,我们把8000的跳删掉保留9000支付成功。
13.点击进入方法列表,点进a方法
14.根据标的注释删掉代码行
15.返回保存
16.确定更新
17.点击反编译后的case.apk,选择功能
18.点击APK共存,即可,安装游戏。
19.进入游戏,选择商品,选择微信支付,弹出支付窗口 关掉或者返回即可!