使用Apktool修改apk

来源:互联网 发布:在哪里买域名比较好 编辑:程序博客网 时间:2024/06/06 21:28

0x01 所需软件

反编译工具apktool(包含aapt.exe、apktool.bat和apktool.jar),签名工具Auto-sign,系统框架应用framework-res.apk。

apktools工具:百度云 -> sjyl

0x02 修改过程

以HelloWorld.apk为例,将显示的文本"HelloWorld"修改为"Hello-ApkTools"。

1)安装框架:apktool if framework-res.apk

d:\apktool\apktool_200RC3>apktool if framework-res.apkI: Framework installed to: C:\Users\Finlay\apktool\framework\1.apk

framwork-res.apk可在手机的system/framwork下找到。


2)反编译:apktool d HelloWorld.apk

将apk文件放在apktool目录下,执行apktool d HelloWorld.apk,(d表示decode)此时apktool目录下就会自动生成一个"HelloWorld"的文件夹了,反编译完成。
D:\apktool\apktool_200RC3>apktool d HelloWorld.apkI: Using Apktool 2.0.0-RC3 on HelloWorld.apkI: Loading resource table...I: Decoding AndroidManifest.xml with resources...I: Loading resource table from file: C:\Users\apktool\framework\1.apkI: Regular manifest package...I: Decoding file-resources...I: Decoding values */* XMLs...I: Baksmaling classes.dex...I: Copying assets and libs...I: Copying unknown files...I: Copying original files...


3)修改:打开HelloWorld\res\values\strings.xml,将<string name="app_name">HelloWorld</string>修改成<string name="app_name">Hello-Apktools</string>。


4)回编译:apktool b HelloWorld

执行apktool b HelloWorld,(b表示build)在HelloWorld\dist下找到修改后的apk文件,回编译完成。
D:\apktool\apktool_200RC3>apktool b HelloWorldI: Using Apktool 2.0.0-RC3 on HelloWorldI: Checking whether sources has changed...I: Smaling smali folder into classes.dex...I: Checking whether resources has changed...I: Building resources...I: Building apk file...


5)签名:将修改好的apk文件copy到Auto-sign下,改名为update,zip,双击Sign.bat,生成update_signed.zip,将update_signed.zip改名为HelloWorld.apk,签名完成。

0x03 end

恭喜,你已习得使用apktool工具修改apk的技能,Change the world by program.。


参考文章:
1)安卓逆向学习笔记(2)- 利用apktool反编译apk并进行二次打包
2)apktool反编译详细使用教程,包括每个细节。

1 0