apkTool是一个APK反编译工具,它拥有编译、反编译、签名等功能,对于经常DIY安卓软件、特别是对喜欢ROM美化,功能破解,修改定制的朋友来说,是必不可少的并且非常实用的一个工具。
今天给大家带来的是2.2.2版本的apktool.jar工具包,集合了批处理一键反编译功能,应该是全网最简单最好用的版本了,也是迄今为止最新的版本,兼容性不错
工具版本:
apktool2.2.2
最专业的ROM开发者社区:宅科技
本程序在使用时需要操作大量的文件,所以需要较长时间的耐心等待。如果在编译程序的过程中点击屏幕的话,容易出现程序无响应的问题。这时,只需要点击等待并耐心等待程序的重新响应即可,程序会继续完成编译工作。
首先,先反编译一下
当完成以上步骤之后,我们window +R->打开cmd窗口
1.运行 apktool 命令 出现可apktool的版本号和指导的命令
2.随便找来一个apk,尝试反编译一下,运行 apktool d -f c: est.apk -o c: est 命令,把test.apk反编译,反编译后的文件放入c盘下的test文件中
3.反编译的文件结构如下:
| 名称 | 存放内容 |
|---|---|
| assets | (未被编译)项目的assets文件夹 |
| res | (未被编译)项目的res文件夹 里面可以清楚的看到values, layout, drawble,anim,mipmap文件夹 |
| smali | (被编译)项目的Java文件,这里表现的不是.Java格式,是.smali格式 |
造成这个现象的原因是:
Android的assets和res文件都不会编译为二进制文件,所以反编译后,基本都是能看到它的全貌.
Android中.Java文件,在JVM编译之后变成.class文件,然后再经过Android的虚拟机Dalvik,代码编译为.smali文件
smail是另外一种语言,和汇编是有点像的,涉及寄存器操作等,下面是一个截图,对于我来说,只能是大概能看懂:
若是对smali语法有兴趣,可以去下面网址看一下,StackOverFlow上面万能网友们给出了很多学习的网址.
Every coin have two sides.这是我高中英文作文基本都会写的一句话.每个工具都是一把双刃剑,就像一枚硬币有正反两面一样.那么 强大的apktool肯定也是一样.以下属于,我个人的见解,如有不对,还望指正.
带来便利一面:
提供一个方式,去反编译优秀的软件,学习知识
smail是Dalvik的执行语言,你完全可以通过反编译去查看Java代码的smail语言,去更深入的了解程序的运行原理和流程
带来威胁一面:
发布的APK被二次打包,作为盗版产品使用,甚至恶意插入广告,病毒等,对软件公司带来损失
发布的APK被反编译,获取的有关服务器的信息,给服务器带来威胁.
通过反编译修改smail文件,减去客户端的限制,去获取不正当的利益,一般发生在游戏软件上
对于开发者来说,前者你可以不用,但是后者不得不防,于是,我们必须给自己的APK加上保护.
未经书面许可,严禁将本网内容作为AI训练资源。
33台词PC版 0.1
文件批量改名Bulk Rename Utility v3.4.1 中文绿色版
PDF快转(SanPDF) v2.0.6.66 官方版
菲菲更名宝贝之得意非凡FFRenamePro V4.0专业版
查找大文件(WizTree) v3.35 绿色版
文件比较查重工具WinMerge v2.16.8.0 中文版
Windows文件管理器(WinNc) v9.4.0.0 官方安装版
文件压缩档案提取(Explzh) v8.18 官方版
WinMerge v2.16.7.0 官方多语中文版
UltraCompare文件比较工具汉化修正中文版 V21.10.0.20免费64位注册码绿色版
文档自动转换工具BlackIce BiBatchConverter v4.80.632 官方版
批量文本文件处理器 V1.4绿色版
MAXHUB文档客户端 v1.3.1官方PC版
文件校验工具(EF CheckSum Manager) v20.02 官方版
全速pdf转换成excel转换器 v7.8.0.0官方版