Mac OS上反编译android app的环境搭建

移动开发 Android
很多时候,我们出于学习或者安全测试等的目的,需要对andorid app的安装文件进行反编译来查看源代码,下面我们来一起搭建Mac os 下的反编译环境。

[[144520]]

很多时候,我们出于学习或者安全测试等的目的,需要对andorid app的安装文件进行反编译来查看源代码,下面我们来一起搭建Mac os 下的反编译环境。

 

安装环境

 

建立基本文件夹

mkdir -p ~/study/apkkiller/soft/bin

 

mkdir -p ~/study/apkkiller/soft/src

 

mkdir -p ~/study/apkkiller/output/

 

andorid app的安装文件为apk包,要反编译apk文件,需要下载apktool和dex2jar这两个软件,它们均托管在google code上:

http://code.google.com/p/android-apktool/

 

http://code.google.com/p/dex2jar/

 

从以上两个页面找到下载地址,这里我们找到的是 apktool1.5.2 和 dex2jar-0.0.9.15的下载地址:

cd ~/study/apkkiller/soft/src

 

wget http://android-apktool.googlecode.com/files/apktool1.5.2.tar.bz2

 

wget http://dex2jar.googlecode.com/files/dex2jar-0.0.9.15.zip

 

解压后文件存放在如下目录:

~/study/apkkiller/soft/src/apktool1.5.2

 

~/study/apkkiller/soft/src/dex2jar-0.0.9.15

 

为了方便使用,建立两个软连接:

ln -s ~/study/apkkiller/soft/src/apktool1.5.2/apktool.jar ~/study/apkkiller/soft/bin/apktool

 

ln -s ~/study/apkkiller/soft/src/dex2jar-0.0.9.15/dex2jar.sh ~/study/apkkiller/soft/bin/dex2jar

 

测试反编译环境

下面开始来反编译我们的测试apk文件,看看环境是否可以正常运行

  1. cd ~/study/apkkiller 
  2. mkdir -p ~/study/apkkiller/output/test/source 
  3. mkdir -p ~/study/apkkiller/output/test/result 
  4.  
  5. cp ./test.apk ./output/test/source/test.zip 
  6. unzip ./output/test/source/test.zip -d ./output/test/source/test 
  7.  
  8. cp ./output/test/source/test/classes.dex ./output/test/source/classes.dex 
  9. ~/study/apkkiller/soft/bin/dex2jar ./output/test/source/classes.dex 
  10. # output ./output/test/source/classes_dex2jar.jar 

要查看反编译后的文件,可以下载jd-gui工具,打开上面生成的 ./output/test/source/classes_dex2jar.jar 文件即可, 该工具可以将源码包都导出来。jd-gui从下面的地址下载:

http://jd.benow.ca/

 

http://jd.benow.ca/jd-gui/downloads/jd-gui-0.3.5.osx.i686.dmg

 

apk的资源文件都存在上面我们解压的文件夹./output/test/source/test中,里面有很多xml文件,但是是加密的,无法直接查看。这时,就需要用到apktool工具了:

java -jar ~/study/apkkiller/soft/bin/apktool d ./test.apk ./output/test/source/test_resource

将导出的源码和资源文件合并,就得到我们想要的结果了。

 

 

 

责任编辑:chenqingxiang 来源: tabalt
相关推荐

2015-01-15 11:01:43

2015-04-02 16:15:24

Java Java 开发环境Mac OS X

2011-05-31 14:52:13

Android 反编译 方法

2011-05-31 14:18:17

2011-05-31 14:38:04

Android 反编译

2015-01-15 10:15:16

Android反编译-smail语法

2010-07-28 16:40:44

Mac OSADSL连接设置

2011-06-29 10:06:27

Ubuntu 11.0Android

2010-09-17 14:27:18

NetBeansAndroid

2013-05-28 13:33:55

Android开发移动应用i-jetty

2012-02-14 09:59:39

Titanium MoTitaniumMac

2017-11-27 15:43:49

Androidjadx反编译

2011-06-15 15:01:32

2010-12-13 14:41:44

Android 2.3MyEclipse

2015-07-13 15:52:18

反编译Android APK

2023-08-11 14:06:58

鸿蒙Windows

2017-02-20 13:54:14

Java代码编译

2009-10-09 09:37:46

2012-10-31 09:51:05

Mac OS XLua编程

2011-04-20 10:32:44

java反编译
点赞
收藏

51CTO技术栈公众号