android捕鱼达人修改方法(反编译、修改、打包)
感谢ssgemail在[url=http://www.iteye.com/topic/1112018]http://www.iteye.com/topic/1112018[/url]中提供的方法
涉及内容
apk反编译
代码修改
打包
重启签名
需要的工具
jdk:必须的
baksmali:classes.dex反编译为smali格式(文本文件,可修改)
smali:smali格式编译打包为classes.dex
但由于smali格式类似汇编,比较难阅读,所以用dex2jar进行辅助
dex2jar:classes.dex转为jar包
jdgui:jar反编译并阅读
以上工具可以在 http://liye111111.ys168.com/ 下载
好了,顺序就是把apk用zip解开,里面的classes.dex分别用baksmali处理为smali,用dex2jar处理成jar,然后用jdgui看代码,找好java文件中要改的位置后,在smali里找对应的位置修改,改完了用smali再编译为classes.dex,覆盖原来apk里的同名文件,最后重新签名。注意安装时要先删除原来手机里的版本,因为签名不同了,我第一次再这里卡了好久。
以“捕鱼达人海底捞”为例
下载这个游戏的apk,fishing_joy_1.apk,和工具放在一起
[img]http://dl.iteye.com/upload/attachment/514175/2486ad61-1e89-34f1-9769-fbe6a3cbe18f.jpg[/img]
用zip解开fishing_joy_1.apk
copy classes.dex到baksmali的同一目录
[img]http://dl.iteye.com/upload/attachment/514177/544e9a0e-362d-30f8-a497-8589e29c5e7e.jpg[/img]
用baksmali处理为smali
java -jar baksmali-1.2.6.jar -x classes.dex
得到out目录,里面是smali文件
用dex2jar处理classes.dex为jar包
dex2jar-0.0.7.10-SNAPSHOT\dex2jar.bat classes.dex
得到classes.dex.dex2jar.jar
这时我们的工作目录下面是这样
[img]http://dl.iteye.com/upload/attachment/514181/32d50f2b-7096-38a1-9a0c-5365e6121360.jpg[/img]
用jdgui打开classes.dex.dex2jar.jar
[img]http://dl.iteye.com/upload/attachment/514183/57365dd2-7e71-3e81-8af1-b57f35fe9464.jpg[/img]
好了,可以看代码,但还不能直接修改,需要对比着来修改smali文件
比如我们通过对比找到控制鱼被打到几率的代码在FishLayer.smali
invoke-static {v4, v5}, Lcom/sg/android/fish/fish/FishFactory;->getProb(II)D
move-result-wide v4
invoke-static {}, Ljava/lang/Math;->random()D
move-result-wide v6
const-wide/high16 v8, 0x4059
最后的0x4059会与random相乘,如果比getProb方法计算的结果小,判断为鱼可以打下来
改为0x0,每条鱼都是必中 :D
改好后,用java -jar smali-1.2.6.jar -o classes.dex out
得到修改后的classes.dex,用这个文件替换fishing_joy_1.apk中的同名文件
但这个apk是不能用的,还没有进行重新签名
先用keytool生成keystore
keytool -genkey -keystore mykeystore -alias mykeystore -validity 999
把apk中的META-INF删除,再用jarsigner 签名
jarsigner -verbose -keystore mykeystore -signedjar fishing_joy_1_signed.apk fishing_joy_1.apk mykeystore
先卸载原来手机中安装的这个游戏,再用fishing_joy_1_signed.apk安装
最后工作目录是这个样子
[img]http://dl.iteye.com/upload/attachment/514187/69f96d14-1cdd-3e1f-b890-6f23839ca999.jpg[/img]
android捕鱼达人修改方法(反编译、修改、打包)相关推荐
- 反编译android 状态栏沉浸,教程:反编译修改实现状态栏时间居左,去除锁屏运营商...
本帖最后由 Gleam 于 2017-7-30 21:15 编辑 重要的事情说三遍: 操作不当会有风险,如不能开机,systemui无限错误等,修改之前确定是否备份system分区. 操作不当会有风险 ...
- mt管理器修改域名对接apk壳修改方法反编译白菜视频教程
下载地址: https://www.yuenos.cc/2514.htmlhttps://www.yuenos.cc/2514.html
- Android TV下LeanbackLauncher的反编译,AS重新打包修改
本文介绍Android 7.1平台下Google LeanbakLauncher的反编译流程,并使用AS工具重新打包修改. 最近需要开发一款TV桌面应用,调研了各类桌面,如当贝桌面,小米桌面,开源的猫 ...
- Unity 安卓 apk 反编译 重新打包 签名修改
拿到一个Unity 打包出来的apk,如果没有加密的话 ,你是可以通过反编译修改其中的属性的. 步骤一 apk 解压 方法1: apk 变成 .zip 并解压 然后修改 \assets\bin\D ...
- apk反编译修改源代码_单击即可将APK反编译为源代码
apk反编译修改源代码 In this tutorial I will guide you how to decompile apk to source code in just one click. ...
- Android APK破解、反编译、打包签名基本思路与方法
Android APK破解.反编译.打包签名基本思路与方法 2013年6月1日星期六 ...
- 客户的一个紧急bug,我用了两种方式进行 C# 反编译修改源码
一:背景 1. 讲故事 周五下午运营反馈了一个紧急bug,说客户那边一个信息列表打不开,急需解决,附带的日志文件也发过来了,看了下日志大概是这样的: 日期:2020-11-13 12:25:45,92 ...
- .net dll 反编译修改IL再编译,修改版本号
记一次.net dll 反编译修改IL再编译exe 可用Everything搜索ildasm.exe 在用ildasm.exe打开dll或exe 点击文件右键转储 转储之后用visua studio ...
- ueditor 编辑html文件名,UEditor编辑器自定义上传图片或文件路径的修改方法,ueditor修改方法...
UEditor编辑器自定义上传图片或文件路径的修改方法,ueditor修改方法 使用ueditor编辑器,附件默认在ueditor/php/upload/, 我的附件地址是网站根目录下/data/u ...
- android 混淆 去掉log,Android去掉/混淆Log,反编译都看不到
原标题:Android去掉/混淆Log,反编译都看不到 出发点: 当然是由于编程习惯太好,打了一堆中文log,其实只是想给测试看.然而如果包被反编译,看log基本都能理解流程了,有点尴尬.所以此文主要 ...
最新文章
- 软件安装:原始码与 Tarball
- 托管数据中心vs.云计算:保障关键任务数据安全
- BZOJ2648: SJY摆棋子
- Linux 中 ss 命令的使用实例介绍
- Effective Java之慎用重载(四十一)
- 又一家知名社交电商平台倒下:并购重组失败,将启动破产清算或重整
- 傅盛希望定义AI时代的机器人产品,2年交出这份可落地答卷
- 使用commons-fileupload包实现文件上传
- stat---文件状态信息结构体
- [代码]POJ 2409 Let it Bead
- arduino:废旧光驱DIY激光雕刻机(完善中……)
- Android 静默安装的几种方式
- 计算机硬盘容量越大运行速度越快,固态硬盘越大运行速度越快吗
- EditPlus实现json格式化
- 转:CWnd的函数,以后可以在这儿找了!
- 基于JAVA郑州卷烟厂库存管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署
- html表格填充空白单元格,Excel表格数据录入:怎么快速填充所有空白单元格?
- 来看一个费解而有趣的c++现象
- 全国高精度数字高程模型 精度为5m的dem
- CC2640R2F UART
热门文章
- html实现原理和流程图,html5实现流程图
- web小记--one
- STM32F091不能通过STLINKV2下载程序
- STM32+MPU6050设计便携式Mini桌面时钟(自动调整时间显示方向)
- MySQL的定义、操作、控制、查询语言的用法
- 提升程序员编程效率的暗黑三条
- python利用selenium爬取X蜂窝热门游记
- jq实现自动轮播图效果
- 微软服务器系统 授权,微软公布 Windows Server 2012 R2授权表
- Redhat 5.4 Oracle 10g RAC Openfiler+Multipath + RAW+ ASM 安装文档