如今爬虫的开发离不开从App爬取数据,本文将介绍如何使用dex2jar反编译一个Android App以及使用JD-GUI工具查看App源码。
准备工作
dex2jar下载及安装
可以从https://sourceforge.net/projects/dex2jar/files/下载dex2jar,然后解压既可。
JD-GUI下载及安装
可以从http://java-decompiler.github.io/下载JD-GUI工具。
反编译
首先准备好你所需要编译的Apk文件;
通过dex2jar反编译Apk得到jar文件
cd dex2jar-2.x #首先cd到dex2jar目录下
sh d2j-dex2jar.sh xxx.apk #执行shell脚本反编译你的Apk
运行完毕后会在dex2jar目录下生成反编译后的jar文件
ps-1:执行d2j-dex2jar.sh这一步时,可能会报错,如下
这是因为内存溢出的问题,只需要修改d2j-dex2jar.sh脚本中最大所需内存既可,如下,默认为512m,这里改为了4096m
ps-2:还有可能碰到如下错误
这是因为dex2jar版本较老引起得,需要去下载最新版(可能不好找,2.0版本以上)或者自行编译dex2jar源码,然后重新反编译apk既可;
具体编译方法可看https://github.com/pxb1988/dex2jar/wiki/BuildFromSource
使用JD-GUI软件查看App源码
直接拖动dex2jar生成的jar文件到JD-GUI中既可,如下:
正文完