火柴人联盟安卓破解版内购破解了后注册帐号会怎么样

腾讯已经敲定代理《绝地求生》,看看到时候会改成啥样。
尽管我们总将苹果出品视为高质量的象征,但即便如此它当然也不是完美的。MacBook 毫无...
这次匆忙升级虽然修复了一个重要漏洞,但是又带来新的问题。
虽然苹果高层一直说Mac Mini是未来产品重要组成部分,但现在还什么动静都没有还是让人...
iPhone X看来还是非常受大家的欢迎,不仅让单季出货量,甚至连平均价格都将创造历史。
如果苹果推出二代AirPods,你希望能改进哪些方面呢?
你在征集阶段的每一次推荐都能让你喜爱的科技产品和 App 离金狮奖更进一步!
这些不仅是最热门、最夺人眼球的新“黑”科技,同时也是全球最领先、最前沿的互联网技...
上周汤姆猫系列又推出了一块非常可爱的休闲游戏《汤姆猫水上乐园》,虽然看起来是感觉...
既然人工智能可以和我们聊天,那当然就可以用来练习外语。
《光荣使命》可以说是腾讯旗下第一款真正的大逃杀类手游,之前的预订超过了3000万人,...
主打颜色凸显功能,可将彩色照片转为黑白照,但可以让你选择保留其中的一种颜色。
腾讯CF手游《穿越火线:枪战王者》的资料片“荒野特训”已经上线,相比其他同类大逃杀...
这或许是篮球两极风格下的第三种思考
玩完这个游戏我的精神状态不太对劲……
如果苹果推出二代AirPods,你希望能改进哪些方面呢?
相关专利一直在更新,或许用不了多久我们就可以在iPhone上使用Apple Pencil了。
未来不仅AirPods不会缺货,其他苹果产品的产能也会改善不少。
苹果表示,我们需要等到 2018 年才能购买 AirPods 无线充电盒。
OtterBox 公司希望提供一些选择来提升用户对《星球大战》系列电影的热爱。
那么究竟是苹果MFi认证涉嫌垄断,还是品胜碰瓷营销呢?
这款 Slim Book 保护套非常实用,它可以为用户提供多种使用模式。
购买这家公司的产品,连壳带镜头都解决了,似乎也挺不错的。
您需要通过验证再能继续浏览 3秒后开始验证
威锋旗下产品
Hi~我是威威!
 粤公网安备 11号
新三板上市公司威锋科技(836555)
增值电信业务经营许可证:
Powered by Discuz!联盟周年狂欢版是一款基于题材的类的手机游戏,游戏中玩家将会体验到的大乱斗玩法,随着游戏的更新,或有更多的加入!
说明:1.内购,购买道具即可直接购买成功(不会扣费),购买完全免费。(购买月卡需联网)
& & & & & 2.无CD(释放时显示秒数需要等待,可以无视,直接连续使用)
联盟吹响集结号角,召唤热门游戏:大圣、瑞雯、劫、盖伦、寒冰、流浪、剑圣...多名并肩,体验前所未有的必杀能量!一触即发,开启专属你的炫技之旅吧!KO!
联盟周年狂欢版更新内容
1、新:九尾妖狐&
2、宝藏:将它拿到手的人就能成为最强者
3、等级上限:最高等级上限提高到100级!
4、月卡特权:月卡特权升级到二级了哦!
5、天赋PVP:PVP也可以使用天赋,无敌躲大招,刷新再放大!
6、限购礼包:出售超值的每日和每周限购礼包啦!
7、稀有礼包:脸好才会出现的五个稀有礼包!终生限购一次!
8、幸运宝箱:一个神奇的道具!
9、新增场景:更新主界面和场景,让你焕然一新!
10、新增怪:增加了新英雄和新,掉落更丰富
11、各种优化和体验升级!
安卓版下载
苹果版下载
本站仅创建用户沟通交流的信息平台,所展示的游戏/软件内容来均来自于第三方用户上传分享,资源仅作为用户间分享讨论之用,除开发商授权外不以盈利为目的。如果侵犯了您的权益,请反馈,我们将第一时间处理。
1金庸群侠传X修改版v1.0角色扮演
2旋风少女v1.0.0角色扮演
3黑暗风暴破解版v1.0.7射击游戏
4植物大战僵尸2天空之城破解版v1.6.0休闲游戏
5馅饼大作战v1.3休闲游戏
6捕鱼达人3破解版v1.0休闲游戏
7亡灵杀手:夏侯惇破解版v3.0角色扮演
8球球大作战v7.1.0休闲游戏
9炫舞浪漫爱v1.11.0动作游戏
10三国群英乱舞破解版v1.1角色扮演火柴人联盟签名、内购破解全攻略 - 『移动安全区』
- 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|
后使用快捷导航没有帐号?
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 8627|回复: 37
火柴人联盟签名、内购破解全攻略
阅读权限10
小白一个,以火柴人联盟破解为例理顺下自己的思路,如果疏漏,请大牛斧正……
1、明确目标
拿到一个apk后,不要着急反编译,先在手机上试玩一下,看哪里是需要内购的以及内购的方式,手机短信验证、支付宝、微信支付等等,心中大概有个谱。以在*豆荚上下载的火柴人联盟为例,查看付费方式(苦逼的很,手机不能截屏,只能用其他手机拍照了。)如下图所示
1.jpg (382.53 KB, 下载次数: 5)
14:13 上传
可以看到支持多种付费方式,有话费支付和三方支付(支付宝、微信、银联,手机充值卡)。
2、验证软件是否有签名并进行破解
把apk扔到中,反编译,不做任何操作,直接编译打包,安装到手机。此时运行程序,有如下提示
3.jpg (63.85 KB, 下载次数: 3)
14:19 上传
可以看到,二次打包后不能运行,说明它有进行签名验证。
在android killer中搜索关键字signatures,结果如下
1.jpg (42.84 KB, 下载次数: 4)
14:25 上传
wandoujia,wow,weibo是三方的sdk,不关心,直接看上述两个文件,发现关键字都是存在一个叫做getAPPSecretString的函数中,直接上java代码,逻辑是获取软件的签名后进行散列运算,然后返回一个字符串,我们此时几乎可以肯定这个东西是用于签名验证的。
1.jpg (38.41 KB, 下载次数: 3)
14:29 上传
我们大概知道了获取签名的位置是其中一个,由于软件一打开就提示是盗版,所以接下来看下主流程。入口是com.DBGame.DiabloLOL.SplashA查看它的oncreate函数,发现它是调用了DiabloLOL的activity,我们主要看DiabloLOL.smali文件,oncreate函数如下
[Java] 纯文本查看 复制代码protected void onCreate(Bundle paramBundle)
super.onCreate(paramBundle);
Bluetooth.getInstance().init(this);
this.context =
BLHelper.init(this.aHandler, this);
MobClickCppHelper.init(this);
this.wandouGamesApi = CmgameApplication.getWandouGamesApi();
this.wandouGamesApi.init(this);
ReYun.initWithKeyAndChannelId(this, &a4d2fd5d86da48f095e823&, BLHelper.getEmChannel());
[color=#ff0000]
new AddBlackName(this);[/color]
[color=#ff0000]
AddBlackName.Check();[/color]
instance =
paramBundle = ((TelephonyManager)getSystemService(&phone&)).getSimOperator();
if (((paramBundle != null) && (paramBundle.trim().equals(&46001&))) || (paramBundle.trim().equals(&50501&)))
this.iFromPay =
if (i != 2) {
EMPayManager.initMerge(this, 1, 2);
MatchVSHelper.init(this.aHandler, this);
catch (Exception paramBundle)
paramBundle.printStackTrace();
if ((paramBundle != null) && (paramBundle.trim().equals(&46003&))) {
看到一个AddBlackName.Check(); 而且addblackName正好是我们上面找到那个两个包括getAPPSecretString类中的一个,感觉棒棒哒,赶紧跟进去,代码很简单,只上关键代码
[Java] 纯文本查看 复制代码
str3 = ((WifiManager)AddBlackName.mContext.getSystemService(&wifi&)).getConnectionInfo().getMacAddress();
str2 = String.format(&X-Em-Apk-Certifiction%s&, new Object[] { utils.getAPPSecretString(AddBlackName.mContext) });
AddBlackName.loadData(String.format(&http://119.29.20.199/stickman/api/v1/sign/confirmSign?did=%s&appkey=%s&ver=%s&ch=%s&lang=%s&pkgname=%s&mac=%s&sdkver=%s&sign=%s&, new Object[] { str1, AddBlackName.sKey, Integer.valueOf(i), AddBlackName.sChannel, AddBlackName.sLanguage, AddBlackName.mContext.getPackageName(), str3, &1.0.0&, str2 }));
获取软件签名后调用loadData函数,传进去的还有个网址,大概可以判断是进行网络验证,跟进去看看,流程也很命令,不再贴代码,大概就是构造一个http包,发到服务器,经过服务器验证,返回状态。当返回状态为1103时,认为是校验失败
[Java] 纯文本查看 复制代码
if (updateItem.getStatus() == 1103)
updateItem.setTitle(paramString.getString(&authTitle&));
updateItem.setDescription(paramString.getString(&authDesc&));
PreferUtil.saveIntValue(mContext, &BLACK_ITATUS&, updateItem.getStatus());
PreferUtil.saveStrValue(mContext, &BLACK_STITLE&, updateItem.getTitle());
PreferUtil.saveStrValue(mContext, &BLACK_SMESSAGE&, updateItem.getDescription());
PreferUtil.saveStrValue(mContext, &BLACK_SURL&, updateItem.getLink());
if (updateItem.getStatus() == 1103) {
mHandler.sendEmptyMessage(1000);
OK,知道大概流程就好办了只需要搜索1103关键字,看哪里进行修改了,修改下if跳转即可。修改方法不再赘述,感兴趣的同学可下载样本比对。修改完成后可正常运行。
3、内购破解
3.1 话费支付破解
软件签名破解完成后,接下来进行内购破解,在不少文章中可到内购破解方式是搜索payCancel、payFailed、onBilling等关键字。试着搜索了,这些关键字都有,但是修改后并没有起作用。后来想了下,这些关键字都是三方sdk中计费成功和失败的标记,而在这个软件中,包含的
三方计费sdk太多了,有移动、联通、三方支付,如下所示
1.jpg (57.7 KB, 下载次数: 3)
15:07 上传
大概看了下其中的逻辑,在common中的EMPayManager类initMerge方法中进行运营商判断,然后根据运营商不同实例化下面的实例,
[Java] 纯文本查看 复制代码
public static void initMerge(Context paramContext, int paramInt1, int paramInt2)
String str = ((TelephonyManager)paramContext.getSystemService(&phone&)).getSimOperator();
if (((str != null) && (str.trim().equals(&46001&))) || (str.trim().equals(&50501&))) {
EMUnicomManager.init(paramContext);
if ((str != null) && (str.trim().equals(&46003&))) {
EMEGamePayManager410.init(paramContext);
} else if (paramInt2 == 0) {
EMMMBillingManager.getInstance().init(paramContext);
} else if (paramInt2 == 1) {
EMMMIntenetManager.getInstance(paramContext).init(paramContext, new OnLoginFinishListener()
public void onLoginFinish(int paramAnonymousInt) {}
EMSohuPayManager.init((Activity)paramContext);
如果修改每个计费sdk的接口会比较麻烦,我们回到主逻辑DiaboLOL,在文件开头定义了一个handler,主要代码有
[Java] 纯文本查看 复制代码
EMPayManager.payMerge(DiabloLOL.this, DiabloLOL.this.PRO_ID[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_RMB[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_UNICOM[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_SMS[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_NAME[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_MM[DiabloLOL.this.mPayIndex], 2, 0, null, false, &shit&, new OnPayFinishListener()
public void onPayFinish(int paramAnonymous2Int)
if (paramAnonymous2Int == 1)
Log.e(&test&, &rechager sucess&);
DiabloLOL.this.setPayment();
BLHelper.purchaseComplete(DiabloLOL.this.PRO_ID_Str[DiabloLOL.this.mPayIndex], 1);
BLHelper.closeShieldLayer();
Log.e(&test&, &rechager failure&);
BLHelper.closeShieldLayer();
System.out.println(&������������&);
调用 EMPayManager的payMerge函数,新建监听器作为参数,跟进去payMerge,是根据运营商不同,调用不同计费sdk的pay接口,并把监听器传进去。如果跟进每个计费接口,会发现每个接口最终都会调用监听器的onPayFinish接口,那么
我们只需要修改onPayFinish接口,使参数恒为1即可。
3.2 三方支付破解
上一步骤搞定了话费内购,接下来在主逻辑中发现一个可疑方法 PayThird ,实现了onfailed和onSuccess方法,把onfailed中的内容全部删除,然后把onSuccess中的内容拷贝进去。测试,发现三方支付的内购也成功破解了,如下
[Java] 纯文本查看 复制代码
public void PayThird(String paramString)
Log.e(&lihytest&, &orderNum & + paramString);
long l = this.PAY_RMB[this.mPayIndex];
this.wandouGamesApi.pay(this, this.PAY_NAME[this.mPayIndex], l, paramString, new OnPayFinishedListener()
public void onPayFail(PayResult paramAnonymousPayResult)
Log.e(&asd&, &onPayFail&);
BLHelper.closeShieldLayer();
public void onPaySuccess(PayResult paramAnonymousPayResult)
Log.e(&asd&, &onPaySuccess&);
ReYun.setPayment(&unkown&, &wdj151&, &RMB&, DiabloLOL.this.PAY_RMB[DiabloLOL.this.mPayIndex] / 100.0F, 0.0F, DiabloLOL.this.PAY_NAME[DiabloLOL.this.mPayIndex], 0L, 0);
BLHelper.purchaseComplete(DiabloLOL.this.PRO_ID_Str[DiabloLOL.this.mPayIndex], 2);
BLHelper.closeShieldLayer();
打开smali代码,把onPaySucess中的部分拷贝到onPayFailed中即可。
其实。。。这个破解的有点侥幸,具体逻辑现在也没有搞明白,所以有时候运气来了挡都挡不住
看下成果吧
2.jpg (292.94 KB, 下载次数: 4)
15:52 上传
1、对于签名验证,有本地验证和网络验证,可以根据不联网时能不能正常运行来判断
2、对于单一模式的付费方式,最好看一下是使用的是那种计费sdk,然后取开发者网站看下该sdk的重要接口
3、对于多种模式的付费方式,查找调用计费接口的统一入口。
PS:仅供技术交流,请勿传播
吾爱币 +23
受教了。。。
感谢发布原创作品,吾爱破解论坛因你更精彩!
我很赞同!
热心回复!
感谢发布原创作品,吾爱破解论坛因你更精彩!
感谢发布原创作品,吾爱破解论坛因你更精彩!
感谢发布原创作品,吾爱破解论坛因你更精彩!
本帖被以下淘专辑推荐:
& |主题: 93, 订阅: 112
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
其实火柴人联盟和游戏的比较好破解&&直接手机mt apk搜onResult方法名&&找到对应数据 把失败改成成功即可
再搜索侵权相关字符串 找到验证代码&&删除所有代码保留返回代码即可 否则闪退
再进xml里面去除sms短信发送权限 即可 完美内购去验证破解&&楼主的方法比较详细 多学习学习
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
感谢发布原创作品,吾爱破解论坛因你更精彩!
很久以前玩过这个游戏&&当时破解的方案就是 设置软件使用权限 将此程序的联网功能关闭&&然后就随心所欲的当单机游戏玩了&&买钻石 金币 英雄都不会扣费了 不知道现在这游戏是不还是这么好破解
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限30
多谢楼主分享& &如果能做个秒杀版再好不过了
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
抱歉,忘记发样本链接了
/s/1bozuVaZ
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
感谢楼主分享多多学习!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限30
预计应该会优秀鼓励,可惜人太少了。加油楼主。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
辣么看llalaaalla
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
此时几乎可以肯定这个东西是用于签名验证的。 病句
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
赞一个,楼主威武
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
感谢发布原创作品,吾爱破解论坛因你更精彩!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
谢谢分享,学习了
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
免责声明:吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
( 京ICP备号 | 京公网安备 87号 )
Powered by Discuz!
Comsenz Inc.火柴人联盟签名、内购破解全攻略 - 『移动安全区』
- 吾爱破解 - LCG - LSG |安卓破解|病毒分析|破解软件|
后使用快捷导航没有帐号?
只需一步,快速开始
请完成以下验证码
请完成以下验证码
查看: 8627|回复: 37
火柴人联盟签名、内购破解全攻略
阅读权限10
小白一个,以火柴人联盟破解为例理顺下自己的思路,如果疏漏,请大牛斧正……
1、明确目标
拿到一个apk后,不要着急反编译,先在手机上试玩一下,看哪里是需要内购的以及内购的方式,手机短信验证、支付宝、微信支付等等,心中大概有个谱。以在*豆荚上下载的火柴人联盟为例,查看付费方式(苦逼的很,手机不能截屏,只能用其他手机拍照了。)如下图所示
1.jpg (382.53 KB, 下载次数: 5)
14:13 上传
可以看到支持多种付费方式,有话费支付和三方支付(支付宝、微信、银联,手机充值卡)。
2、验证软件是否有签名并进行破解
把apk扔到中,反编译,不做任何操作,直接编译打包,安装到手机。此时运行程序,有如下提示
3.jpg (63.85 KB, 下载次数: 3)
14:19 上传
可以看到,二次打包后不能运行,说明它有进行签名验证。
在android killer中搜索关键字signatures,结果如下
1.jpg (42.84 KB, 下载次数: 4)
14:25 上传
wandoujia,wow,weibo是三方的sdk,不关心,直接看上述两个文件,发现关键字都是存在一个叫做getAPPSecretString的函数中,直接上java代码,逻辑是获取软件的签名后进行散列运算,然后返回一个字符串,我们此时几乎可以肯定这个东西是用于签名验证的。
1.jpg (38.41 KB, 下载次数: 3)
14:29 上传
我们大概知道了获取签名的位置是其中一个,由于软件一打开就提示是盗版,所以接下来看下主流程。入口是com.DBGame.DiabloLOL.SplashA查看它的oncreate函数,发现它是调用了DiabloLOL的activity,我们主要看DiabloLOL.smali文件,oncreate函数如下
[Java] 纯文本查看 复制代码protected void onCreate(Bundle paramBundle)
super.onCreate(paramBundle);
Bluetooth.getInstance().init(this);
this.context =
BLHelper.init(this.aHandler, this);
MobClickCppHelper.init(this);
this.wandouGamesApi = CmgameApplication.getWandouGamesApi();
this.wandouGamesApi.init(this);
ReYun.initWithKeyAndChannelId(this, &a4d2fd5d86da48f095e823&, BLHelper.getEmChannel());
[color=#ff0000]
new AddBlackName(this);[/color]
[color=#ff0000]
AddBlackName.Check();[/color]
instance =
paramBundle = ((TelephonyManager)getSystemService(&phone&)).getSimOperator();
if (((paramBundle != null) && (paramBundle.trim().equals(&46001&))) || (paramBundle.trim().equals(&50501&)))
this.iFromPay =
if (i != 2) {
EMPayManager.initMerge(this, 1, 2);
MatchVSHelper.init(this.aHandler, this);
catch (Exception paramBundle)
paramBundle.printStackTrace();
if ((paramBundle != null) && (paramBundle.trim().equals(&46003&))) {
看到一个AddBlackName.Check(); 而且addblackName正好是我们上面找到那个两个包括getAPPSecretString类中的一个,感觉棒棒哒,赶紧跟进去,代码很简单,只上关键代码
[Java] 纯文本查看 复制代码
str3 = ((WifiManager)AddBlackName.mContext.getSystemService(&wifi&)).getConnectionInfo().getMacAddress();
str2 = String.format(&X-Em-Apk-Certifiction%s&, new Object[] { utils.getAPPSecretString(AddBlackName.mContext) });
AddBlackName.loadData(String.format(&http://119.29.20.199/stickman/api/v1/sign/confirmSign?did=%s&appkey=%s&ver=%s&ch=%s&lang=%s&pkgname=%s&mac=%s&sdkver=%s&sign=%s&, new Object[] { str1, AddBlackName.sKey, Integer.valueOf(i), AddBlackName.sChannel, AddBlackName.sLanguage, AddBlackName.mContext.getPackageName(), str3, &1.0.0&, str2 }));
获取软件签名后调用loadData函数,传进去的还有个网址,大概可以判断是进行网络验证,跟进去看看,流程也很命令,不再贴代码,大概就是构造一个http包,发到服务器,经过服务器验证,返回状态。当返回状态为1103时,认为是校验失败
[Java] 纯文本查看 复制代码
if (updateItem.getStatus() == 1103)
updateItem.setTitle(paramString.getString(&authTitle&));
updateItem.setDescription(paramString.getString(&authDesc&));
PreferUtil.saveIntValue(mContext, &BLACK_ITATUS&, updateItem.getStatus());
PreferUtil.saveStrValue(mContext, &BLACK_STITLE&, updateItem.getTitle());
PreferUtil.saveStrValue(mContext, &BLACK_SMESSAGE&, updateItem.getDescription());
PreferUtil.saveStrValue(mContext, &BLACK_SURL&, updateItem.getLink());
if (updateItem.getStatus() == 1103) {
mHandler.sendEmptyMessage(1000);
OK,知道大概流程就好办了只需要搜索1103关键字,看哪里进行修改了,修改下if跳转即可。修改方法不再赘述,感兴趣的同学可下载样本比对。修改完成后可正常运行。
3、内购破解
3.1 话费支付破解
软件签名破解完成后,接下来进行内购破解,在不少文章中可到内购破解方式是搜索payCancel、payFailed、onBilling等关键字。试着搜索了,这些关键字都有,但是修改后并没有起作用。后来想了下,这些关键字都是三方sdk中计费成功和失败的标记,而在这个软件中,包含的
三方计费sdk太多了,有移动、联通、三方支付,如下所示
1.jpg (57.7 KB, 下载次数: 3)
15:07 上传
大概看了下其中的逻辑,在common中的EMPayManager类initMerge方法中进行运营商判断,然后根据运营商不同实例化下面的实例,
[Java] 纯文本查看 复制代码
public static void initMerge(Context paramContext, int paramInt1, int paramInt2)
String str = ((TelephonyManager)paramContext.getSystemService(&phone&)).getSimOperator();
if (((str != null) && (str.trim().equals(&46001&))) || (str.trim().equals(&50501&))) {
EMUnicomManager.init(paramContext);
if ((str != null) && (str.trim().equals(&46003&))) {
EMEGamePayManager410.init(paramContext);
} else if (paramInt2 == 0) {
EMMMBillingManager.getInstance().init(paramContext);
} else if (paramInt2 == 1) {
EMMMIntenetManager.getInstance(paramContext).init(paramContext, new OnLoginFinishListener()
public void onLoginFinish(int paramAnonymousInt) {}
EMSohuPayManager.init((Activity)paramContext);
如果修改每个计费sdk的接口会比较麻烦,我们回到主逻辑DiaboLOL,在文件开头定义了一个handler,主要代码有
[Java] 纯文本查看 复制代码
EMPayManager.payMerge(DiabloLOL.this, DiabloLOL.this.PRO_ID[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_RMB[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_UNICOM[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_SMS[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_NAME[DiabloLOL.this.mPayIndex], DiabloLOL.this.PAY_CODE_MM[DiabloLOL.this.mPayIndex], 2, 0, null, false, &shit&, new OnPayFinishListener()
public void onPayFinish(int paramAnonymous2Int)
if (paramAnonymous2Int == 1)
Log.e(&test&, &rechager sucess&);
DiabloLOL.this.setPayment();
BLHelper.purchaseComplete(DiabloLOL.this.PRO_ID_Str[DiabloLOL.this.mPayIndex], 1);
BLHelper.closeShieldLayer();
Log.e(&test&, &rechager failure&);
BLHelper.closeShieldLayer();
System.out.println(&������������&);
调用 EMPayManager的payMerge函数,新建监听器作为参数,跟进去payMerge,是根据运营商不同,调用不同计费sdk的pay接口,并把监听器传进去。如果跟进每个计费接口,会发现每个接口最终都会调用监听器的onPayFinish接口,那么
我们只需要修改onPayFinish接口,使参数恒为1即可。
3.2 三方支付破解
上一步骤搞定了话费内购,接下来在主逻辑中发现一个可疑方法 PayThird ,实现了onfailed和onSuccess方法,把onfailed中的内容全部删除,然后把onSuccess中的内容拷贝进去。测试,发现三方支付的内购也成功破解了,如下
[Java] 纯文本查看 复制代码
public void PayThird(String paramString)
Log.e(&lihytest&, &orderNum & + paramString);
long l = this.PAY_RMB[this.mPayIndex];
this.wandouGamesApi.pay(this, this.PAY_NAME[this.mPayIndex], l, paramString, new OnPayFinishedListener()
public void onPayFail(PayResult paramAnonymousPayResult)
Log.e(&asd&, &onPayFail&);
BLHelper.closeShieldLayer();
public void onPaySuccess(PayResult paramAnonymousPayResult)
Log.e(&asd&, &onPaySuccess&);
ReYun.setPayment(&unkown&, &wdj151&, &RMB&, DiabloLOL.this.PAY_RMB[DiabloLOL.this.mPayIndex] / 100.0F, 0.0F, DiabloLOL.this.PAY_NAME[DiabloLOL.this.mPayIndex], 0L, 0);
BLHelper.purchaseComplete(DiabloLOL.this.PRO_ID_Str[DiabloLOL.this.mPayIndex], 2);
BLHelper.closeShieldLayer();
打开smali代码,把onPaySucess中的部分拷贝到onPayFailed中即可。
其实。。。这个破解的有点侥幸,具体逻辑现在也没有搞明白,所以有时候运气来了挡都挡不住
看下成果吧
2.jpg (292.94 KB, 下载次数: 4)
15:52 上传
1、对于签名验证,有本地验证和网络验证,可以根据不联网时能不能正常运行来判断
2、对于单一模式的付费方式,最好看一下是使用的是那种计费sdk,然后取开发者网站看下该sdk的重要接口
3、对于多种模式的付费方式,查找调用计费接口的统一入口。
PS:仅供技术交流,请勿传播
吾爱币 +23
受教了。。。
感谢发布原创作品,吾爱破解论坛因你更精彩!
我很赞同!
热心回复!
感谢发布原创作品,吾爱破解论坛因你更精彩!
感谢发布原创作品,吾爱破解论坛因你更精彩!
感谢发布原创作品,吾爱破解论坛因你更精彩!
本帖被以下淘专辑推荐:
& |主题: 93, 订阅: 112
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
其实火柴人联盟和游戏的比较好破解&&直接手机mt apk搜onResult方法名&&找到对应数据 把失败改成成功即可
再搜索侵权相关字符串 找到验证代码&&删除所有代码保留返回代码即可 否则闪退
再进xml里面去除sms短信发送权限 即可 完美内购去验证破解&&楼主的方法比较详细 多学习学习
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
感谢发布原创作品,吾爱破解论坛因你更精彩!
很久以前玩过这个游戏&&当时破解的方案就是 设置软件使用权限 将此程序的联网功能关闭&&然后就随心所欲的当单机游戏玩了&&买钻石 金币 英雄都不会扣费了 不知道现在这游戏是不还是这么好破解
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限30
多谢楼主分享& &如果能做个秒杀版再好不过了
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
抱歉,忘记发样本链接了
/s/1bozuVaZ
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
感谢楼主分享多多学习!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限30
预计应该会优秀鼓励,可惜人太少了。加油楼主。
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
辣么看llalaaalla
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
此时几乎可以肯定这个东西是用于签名验证的。 病句
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
赞一个,楼主威武
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限10
感谢发布原创作品,吾爱破解论坛因你更精彩!
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限25
谢谢分享,学习了
发帖求助前要善用【】功能,那里可能会有你要找的答案;如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子分类或者标题加上【已解决】;如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【CB】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
免责声明:吾爱破解所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。
( 京ICP备号 | 京公网安备 87号 )
Powered by Discuz!
Comsenz Inc.}

我要回帖

更多关于 火柴人联盟怎么样 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信