『原』在Linux下反编译Android .apk文件 使用apktool dex2jar JD-eclipse

摘要:
后来,2.0以下的文件被替换为旧版本中的文件。3.使用JD Eclipse插件打开类文件并获取jar文件。您还可以在Eclipse中下载插件JD Eclipse。打开。jar文件中的类文件引用博客http://my.oschina.net/mynote/blog/85083JD Eclipse安装方法的地址http://java.decompiler.free.fr/?q=jdeclipseOSC地址:http://www.oschina.net/p/jd-gui在线安装地址http://java.decompiler.free.fr/jd-eclipse/update要下载图像文件:http://jd.benow.ca/jd-eclipse/downloads/jdeclipse_update_site.zip采用图像文件安装。

一、使用apktool 将 apk反编译生成程序的源代码和图片、XML配置、语言资源等文件

具体步骤:

(1)下载反编译工具包:apktool官方的打不开

http://apktool.shoujifans.com/2014/12/21.html 里有网盘下载

需要下载下边两个文件

  1. apktool1.5.2.tar.bz2
  2. apktool-install-linux-r05-ibot.tar.bz2

(2)将下载好的两个包解压到“同一个”文件夹apktool里面。 注意是同一个

(3)在命令行下定位到apktool文件夹,输入以下命令:java -jar apktool.jar d android.apk,出现如图所示:说明反编译成功

java -jar apktool.jar d [apk文件 ] [输出文件夹],输出文件夹是可选的,如果没有指定输出到哪个文件夹下,那么默认是当前文件夹。

我是执行 ./apktool d xxx.apk 成功的

d表示decode,在当前目录下就会生成一个名为xxx的目录,里面就是反编译出来的各种资源文件,其中res表示资源文件,smali表示源代码,不过是字节码,不能直接查看。

二、下载apk反编译工具dex2jar,是将apk中的classes.dex转化成jar文件

具体步骤:

(1)下载dex2jar

dex2jar 下载地址:
http://sourceforge.net/projects/dex2jar/files/?source=navbar

(2)将 要反编译的apk文件解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的

(3)在命令行下定位到dex2jar-2.0文件夹,运行
sh dex2jar.sh ~/apk/classes.dex(dex文件的目录)
最终生成
classes_dex2jar.jar,如图所示:

dex2jar-2.0版本,解压出来的目录下只有 d2j-dex2jar.sh,没有dex2jar.sh。执行了一下,报错。

下载了旧版本,执行成功。。。后来把2.0下的文件替换到旧版本中了

三、使用JD-Eclipse插件打开class文件

(1)这时候得到了 jar文件。可以下载JD-GUI。也可以下载Eclipse中的插件JD-Eclipse。打开jar文件中的.class文件

(2)参考博文 http://my.oschina.net/mynote/blog/85083的安装方法

JD-Eclipse的地址http://java.decompiler.free.fr/?q=jdeclipse

OSC地址:http://www.oschina.net/p/jd-gui

在线安装的地址http://java.decompiler.free.fr/jd-eclipse/update

下载镜像文件的地址: http://jd.benow.ca/jd-eclipse/downloads/jdeclipse_update_site.zip

(3)采用的是镜像文件的安装。

安装过程:

Help—>Install new Software—>add—>Archive(选择zip文件)/填写url —>选择安装

(4)重启后配置class默认打开方式(Class file Editor) 但是我重启Eclipse发现不用配置,配置好了。其实就是把默认的打开方式设置为Class file Editor。

window—>Preferences—>General—>Editors—>File Associations—>(选择)*.class without source——>(在下面的Associated editors栏目中)add—>Class file Editor(选择添加)—>(选择新的打开方式选择默认)Default

配置如图:

『原』在Linux下反编译Android .apk文件 使用apktool dex2jar JD-eclipse第1张

这时候已经可以打开jar包中的class文件了

免责声明:文章转载自《『原』在Linux下反编译Android .apk文件 使用apktool dex2jar JD-eclipse》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇C#操作redis反编译过程详解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Eclipse+APKTool动态调试APK

1. 所需工具 Eclipse. Apktool v2.0.6. 安卓SDK工具.   2. 重编译APK     apktool d -d -o test test.apk 此时当前test目录下就是apktool解压后的所有文件。     apktool b -d test 此时testdist目录下会生成一个apk文件,接下来将apk签名后安装进...

08- adb常用命令以及模拟器链接adb命令

adb 命令简介  ADB即 Android debug bridge。是Android下面一个通用的调试工具。 熟练使用adb命令会大大增加开发效率,作为测试人员,熟练掌握adb,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件,卸载软件,系统升级,运行shell命令等。 adb.exe在安装的Android的SDK开发包platf...

(appium+python)UI自动化_02_appium启动手机app

前提:需先安装配置好appium+python自动化环境,已配置好环境的小伙伴可以参考以下步骤启动Android app,具体步骤如下: 一、USB连接手机 (1)手机USB连接电脑 (2)手机打开开发者模式、USB调试功能 二、基础信息配置 1,获取设备号 终端获取设备号,指令:adb devices   2,获取apk包名、activity (1)打开...

Android开发记录

http://coffeelover.iteye.com/blog/1039470 一、Android模拟器相关 1. Android模拟器安装 Market 模拟器默认没有安装 Market,看到网上有较为复杂的安装方法,也有1个简单的,试了简单的,在 Android2.2 模拟器下试过是OK的,简单的方法如下:1) 下载2个文件:GoogleServ...

破解APK注入代码大揭秘

点此了解详细的APK破解及二次打包过程揭秘: http://t.cn/RzEn7UK   【HACK】破解APK并注入自己的代码 会破解是你的本事,但是请不要去干坏事! 使用工具: APKTool 提醒:能够正常安装到手机上的APK都是带有签名的(不了解签名的可以百度),APK在破解重新打包后是已经不再拥有签名的,如果想要你破解后的APK能够正常运行请...

Jenkins+Gradle+Git自动打apk包,并上传到ftp

软件安装: 1、安装Jenkins、git、AndroidSDK 2、配置AndroidSDK环境变量 ANDROID_HOME:D:Androidsdk PATH:%ANDROID_HOME%platform-tools;%ANDROID_HOME% ools 环境配置: 1、打开Jenkins首页,进入系统管理--插件管理--可选插件列表,安装Grad...