2024年4月17日发(作者:)
Uubuntu 14.04 LTS反编译apk
一、
使用apktool反编译apk
1、安装apktool
apktool是Google提供的APK编译工具,能够反编译及回编译apk,需要Java环境
的支持(在此不再赘述Java的安装与配置,详见《Ubuntu14.04 LTS安装JDK及其环境
变量配置和Eclipse的安装》)。
下载2、2两个包,并将这两个包里
面的文件解压到同一个目录下(例如,我就解压到自己使用的账户目录下的apktool文件夹,
绝对路径是/home/geek/apktool)。解压后得到aapt、apktool、三个文件。如图1所
示:
图1
2、apktool命令详解
为了方便演示,反编译apk的时候把要反编译的apk文件放到apktool安装目录下,并
切换到apktool目录下,以下为命令详解:
decode
该命令用于进行反编译apk文件,一般用法为:apktool d <>
<>代表要反编译的apk文件的路径,一定要绝对路径;
件的存储位置,同样也要绝对路径。示例如下:
geek@GEEK:~$ cd apktool/
geek@GEEK:~/apktool$ ./apktool d CM_ /home/geek/apktool/CM_WiFi
I:
I: Loading
I: Loaded.
I: Decoding
I: Loading resource table from file: /home/geek/apktool/framework/
I: Loaded.
I: Regular
I:
I: Decoding values */*
I: Done.
I: Copying assets
geek@GEEK:~/apktool$
切换到CM_WiFi目录下,可以看到这里有apk的源码(smali)、图片、xml配置和语言
配置等等信息。整个反编译解包过程如图2所示。
图2
build
该命令用于编译修改好的文件,一般用法为apktool b
这里的
发现多了2个文件夹build和dist,其中build里面存储着编译过程中逐个编译的文件,而
dist里面则存储着最终打包的apk文件。示例如下:
geek@GEEK:~$ cd apktool
geek@GEEK:~/apktool$ ./apktool b /home/geek/apktool/CM_WiFi
I: Checking whether sources
I:
I: Checking whether resources
I:
I:
I: Building


发布评论