最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。
准备工作
1. 系统配置好Java JDK环境变量
2. 需要root权限的手机(针对系统自带apk,其他软件免root)
4.
apktool工具
开始反编译
本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:
按键win + R 输入cmd,打开命令窗口,并将路径切换到需要反编译的apk文件Settings.apk所在的路径,输入命令行
apktool d -r Settings.apk
即可在该目录下生成一个Settings文件夹,如图:
文件夹的变化如下图:
重新打包
此时反编译完成,我们可以打开Settings文件夹,在里面对应的文件夹中修改或是替换里面的内容如文字或图片等,替换称自己的即可(如果需要改代码,则可打开对应的smali文件,找到对应的地方,把对应的汇编语言修改成自己的中文即可,因为这个是汇编语言,小编不会汇编,所以不敢误人子弟),替换完成之后,将路径切换到apktool下执行命令:
apktool.bat b -o <output.apk> <input_dir>
<