码迷,mamicode.com
首页 > 其他好文 > 详细

APK文件反编译

时间:2014-06-18 15:16:42      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:android   style   class   blog   code   java   

上次看了两篇反编译APK文件的文章,反编译了几个音乐播放器,自己借用其中一个应用的界面做了一个相应播放器。近期有比较多的空闲时间,所以打算做一个LBS旅行应用。但目前发现又不会反编译了,所以还是记录下来,下次再忘直接看自己的文章比较快。(注:以下为Windows环境下)

1:反编译Java源码(从dex文件->jar文件->java文件)

利用工具(1)dex2jar,下载地址:http://code.google.com/p/dex2jar/(不知道能不能连上) (2)jd-gui,下载地址:http://jd.benow.ca/

解压后启动命令行(开始->cmd),更改目录到解压路径,如我的目录:D:\adt\apk2java\dex2jar-0.0.9.15

运行命令

(1) d:

(2) cd D:\adt\apk2java\dex2jar-0.0.9.15

(3) 解压要反编的APK文件,得到classes.dex文件,如我要反编译去哪儿旅游攻略,classes.dex文件路径为:D:\android_relate\travelLBS\com.qunar.travelplan_222048\classes.dex

(4) d2j-dex2jar -o D:\android_relate\travelLBS\com.qunar.travelplan_222048\qne.jar D:\android_relate\travelLBS\com.qunar.travelplan_222048\classes.dex

注:dex2jar命令已经废弃,官方推荐用d2j-dex2jar命令,上面的命令d2j-dex2jar -o [反编译后的文件保存位置及名字]  [要反编译的dex文件];如果不加-o参数即指反编译到d2j-dex2jar命令所在路径中,这里还有其他的参数,具体可以自己去看d2j-dex2jar -help

(5) 得到qne.jar文件后用jd-gui打开就行了,这个就不解释了,去用就懂

 

2:反编译资源文件

工具:apktoole,下载地址:http://code.google.com/p/android-apktool/ (假设我的apktool文件路径为:D:\adt\fby\prk-window)

运行命令

(1) d:

(2) cd D:\adt\fby\prk-window

(3) apktool d -s D:\android_relate\travelLBS\com.qunar.travelplan_222048.apk D:\android_relate\travelLBS\qne

注:-s是指src目录就不要反编译出来了,反编译的话得到的是.smali文件(对我反正暂时没什么用)。命令apktool d -s [apk文件路径] [生成的资源目录路径]。具体参数可以自己了解一下apktool -help

至此Java文件和资源文件都得到了。反编出来的java文件可能添加了混淆,类名为a,b,c这样,暂时没办法还原

截个图看一下吧:

命令行:

bubuko.com,布布扣

得到的文件(1个jar文件,1个资源目录):

bubuko.com,布布扣

 

 

APK文件反编译,布布扣,bubuko.com

APK文件反编译

标签:android   style   class   blog   code   java   

原文地址:http://www.cnblogs.com/creasylai19/p/3791316.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!