吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 13503|回复: 33
收起左侧

[Android 原创] 分享一方法破解某厂商游戏实现不弹支付提示窗

  [复制链接]
B6B6B6 发表于 2015-3-11 22:58 来自手机
本帖最后由 B6B6B6 于 2015-3-15 12:08 编辑

如果觉得不错的话,评分支持下吧。
破解一个游戏实现不弹支付提示窗,甚至那个厂商的游戏。游戏名:滑雪大冒险:探险时光。下面是我破解时的分析过程,可能对像我一样的有用。
游戏我是从移动MM下载的,一开始我以为只需用MT文件管理器改onbillingFinish方法的代码就可以了。改完后安装游戏,点购买后出现失败。我不甘心,再用MT找到onbillingFinish方法发现可疑代码onSuccess()V和onFailed()V如图 1.png
然后我就用MT搜代码onFailed()V然后看到跟pay有关一个一个改成onSuccess()V,好了保存,打包,签名,安装,进游戏,点内购,发现点购买,弹出“初始化”和购买成功,如图 2~01.png
那么问题来了,支付提示窗呢?
带着疑问,我用MT搜"初始化"字符串,找到了一个类,发现在初始化下面有个onSuccess()V没错这个就是我乱改的那个,这个就是没弹窗的原因。再看看上面的代码,有手机卡的字眼,如图 3.png
于是我猜这些是判断sim卡类型。那么能否这些代码执行前就执行onSuccess()V从而达到无sim卡和三网都可付费呢?然后我返回,看了下类名是com/yodo1/sdk/game/Yodo14GameSmsPay$1那么可以判断肯定有com/yodo1/sdk/game/Yodo14GameSmsPay的类,用MT打开C类列表找到com/yodo1/sdk/game/Yodo14GameSmsPay这个类。点开一看有个startpay方法,点进startpay方法发现有个onCanceled()V没记错的话Canceled这应该是取消的意思,把他改成onSuccess()V再把上面的if代码注释掉或删除,保存,签名,安装,点购买,如图 4~01.png
这次没弹初始化了,这说明确实是先执行startPay方法的。最后我把手机卡拆了,开机进游戏,点购买,照样成功,这就达到目的无卡也能购买了。之后试了这个游戏厂商的其他游戏,一样有startPay方法,而且改后点购买不弹任何窗,例如另一个滑雪大冒险和喵星人大战就是这样,但是这个 滑雪大冒险:探险时代 会弹购买成功。

至此总结出这个厂商的游戏应该都可用MT搜startPay方法或者直接找到com/yodo1/sdk/game/Yodo14GameSmsPay这个类的startPay方法,然后改onCanceled()V为onSuccess()V以防万一把那两个if代码注释掉,而且去掉发短信权限。下面是startPay方法的代码,我写的可能比较啰嗦,还请各位见谅。

invoke-static {} Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
iget-wide v2 v4 Lcom/yodo1/sdk/game/Yodo14GameSmsPay;->prePayTime:J
sub-long/2addr v0 v2
const-wide/16 v2 0x320
cmp-long v0 v0 v2
if-gez v0 :label_19#这里应该注释掉或删除
if-eqz v7 :label_18#这里应该注释掉或删除
invoke-interface {v7} Lcom/yodo1/sdk/game/Yodo14GameSmsPayListener;->onCanceled()V#改这里为onSuccess()V
label_18:
return-void
label_19:
invoke-static {} Ljava/lang/System;->currentTimeMillis()J
move-result-wide v0
iput-wide v0 v4 Lcom/yodo1/sdk/game/Yodo14GameSmsPay;->prePayTime:J
invoke-static {} Lcom/yodo1/sdk/game/Yodo14GameBasic;->getInstance()Lcom/yodo1/sdk/game/Yodo14GameBasic;
move-result-object v0
invoke-virtual {v0} Lcom/yodo1/sdk/game/Yodo14GameBasic;->getMainHandler()Landroid/os/Handler;
move-result-object v0
new-instance v1 Lcom/yodo1/sdk/game/Yodo14GameSmsPay$1;
invoke-direct {v1,v4,v5,v7,v6} Lcom/yodo1/sdk/game/Yodo14GameSmsPay$1;-><init>(Lcom/yodo1/sdk/game/Yodo14GameSmsPay;Landroid/app/Activity;Lcom/yodo1/sdk/game/Yodo14GameSmsPayListener;Ljava/lang/String;)V
invoke-virtual {v0,v1} Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
goto :label_18
这里再详细的说说破解过程吧,首先打开MT文件管理器,点软件,点classes.dex文件,选择编辑代码,然后搜方法startpay如图√选不区分大小写和搜索方法名 a.png
接着点进搜索到的类,点startPay方法。如图 b.png
接着按照图中提示修改如图 c.png d.png
返回保存,会提示是否更新到压缩文件中,点是,保存好后,别忘了去掉软件的发短信权限,然后签名。OK破解完毕。







免费评分

参与人数 4威望 +1 热心值 +3 收起 理由
885 + 1 我很赞同!
想飞的小闹 + 1 我很赞同!
Hmily + 1 感谢发布原创作品,吾爱破解论坛因你更精彩.
spguangz + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
李某某 发表于 2015-3-11 23:54 来自手机
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| B6B6B6 发表于 2015-3-11 22:59 来自手机
本帖最后由 B6B6B6 于 2015-3-13 22:16 编辑

图已更新到帖子里,这里的图多余的,请直接忽视。
3.png
4~01.png
zgc2012 发表于 2015-3-12 00:23
不玩这些游戏,但还是感谢楼主分享的这些经验
w68164012 发表于 2015-3-12 09:59
牛人啊佩服
相约一生 发表于 2015-3-12 12:29
感谢分享破解技巧
疯桦绝代 发表于 2015-3-12 12:32
安卓的破解就是顺畅
夏沫烟雨!!! 发表于 2015-3-14 10:27
找了好久终于找到教程了
日岳如流 发表于 2015-3-14 20:23
谢谢分享,又学了一点知识
18227597096 发表于 2015-3-15 01:22 来自手机
…我内购!他提示说我未安装啥玩意儿!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 07:35

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表