Android4.0反编译笔记
2015-06-09 13:33
537 查看
环境:win7,JDK7,Android SDK 4.0.3已经完全下载
android 反编译需要用到几个工具,它们是apktools,dex2jar,jd-gui:
apktools,作者用的版本是2.0.0
下载地址:http://ibotpeaches.github.io/Apktool/
dex2jar,版本是2.0
下载地址:http://sourceforge.net/projects/dex2jar/files/
jd-gui的版本是jd-gui-0.3.3.windows,
下载地址:https://code.google.com/p/innlab/downloads/list
三个工具介绍:
apktool
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
dex2jar
作用:将apk反编译成java源码(classes.dex转化成jar文件)
jd-gui
作用:查看APK中classes.dex转化成出的jar文件,即源码文件
一,apktool的使用
1.将apk文件拷贝到tool目录下,本次的例子是一个app-release.apk,它是由android开发demo例子编译而成的。
2.编写apktool.bat文件内容如下,注意红字内容:
@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
java -jar -Duser.language=en "%~dp0\apktool_2.0.0.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9
3.用命令行模式执行命令:
apktool.bat d app-release.apk -o test
4.输出结果可能如下:
I: Using Apktool 2.0.0 on app-release.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: D:\用户目录\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
5.提取的资源文件都存放在test目录下了
二.dex2jar的使用
1.将app-release.apk拷贝到dex2jar的目录下,并且改名为app-release.zip,解压app-release.zip
2.将解压出来的文件classes.dex,放到d2j-jar2dex.bat同级目录,
3.执行命令
d2j-dex2jar.bat classes.dex
4.可能输出结果为:
dex2jar classes.dex -> .\classes-dex2jar.jar
这个classes-dex2jar.jar就是反编译的文件。
三.jd-gui的使用
这个工具很简单,就是把反编译的文件classes-dex2jar.jar打开就可以了。也可以用鼠标拖拽到jd-gui的窗口,结果如下图:
到此,反编译就完成了,可以慢慢研究源码学习经验了。
android 反编译需要用到几个工具,它们是apktools,dex2jar,jd-gui:
apktools,作者用的版本是2.0.0
下载地址:http://ibotpeaches.github.io/Apktool/
dex2jar,版本是2.0
下载地址:http://sourceforge.net/projects/dex2jar/files/
jd-gui的版本是jd-gui-0.3.3.windows,
下载地址:https://code.google.com/p/innlab/downloads/list
三个工具介绍:
apktool
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
dex2jar
作用:将apk反编译成java源码(classes.dex转化成jar文件)
jd-gui
作用:查看APK中classes.dex转化成出的jar文件,即源码文件
一,apktool的使用
1.将apk文件拷贝到tool目录下,本次的例子是一个app-release.apk,它是由android开发demo例子编译而成的。
2.编写apktool.bat文件内容如下,注意红字内容:
@echo off
if "%PATH_BASE%" == "" set PATH_BASE=%PATH%
set PATH=%CD%;%PATH_BASE%;
java -jar -Duser.language=en "%~dp0\apktool_2.0.0.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9
3.用命令行模式执行命令:
apktool.bat d app-release.apk -o test
4.输出结果可能如下:
I: Using Apktool 2.0.0 on app-release.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
I: Loading resource table from file: D:\用户目录\apktool\framework\1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
5.提取的资源文件都存放在test目录下了
二.dex2jar的使用
1.将app-release.apk拷贝到dex2jar的目录下,并且改名为app-release.zip,解压app-release.zip
2.将解压出来的文件classes.dex,放到d2j-jar2dex.bat同级目录,
3.执行命令
d2j-dex2jar.bat classes.dex
4.可能输出结果为:
dex2jar classes.dex -> .\classes-dex2jar.jar
这个classes-dex2jar.jar就是反编译的文件。
三.jd-gui的使用
这个工具很简单,就是把反编译的文件classes-dex2jar.jar打开就可以了。也可以用鼠标拖拽到jd-gui的窗口,结果如下图:
到此,反编译就完成了,可以慢慢研究源码学习经验了。
相关文章推荐
- Android Studio 相关-快捷键、常见问题
- Android 省市县 三级联动(android-wheel的使用)
- Android 5.0 如何正确启用isLoggable(二)__原理分析
- Android SDK Manager需要下载类目
- Android OOM 问题的总结
- Android图片内存优化的心得
- android studio 更新 Gradle错误解决方法
- Android优化系列——代码优化
- Android之Activity的四种启动模式
- AndroidManifest.xml——activity(二)
- Android锁定屏幕或关闭状态-screen,高速按两次音量向下键来实现拍摄功能(1.1Framework在实现的形式层广播)
- android屏幕适配建议
- android webView不能加载本地html文件问题
- Android 控制台异常:ScrollView can host only one direct child
- Android NDK (学习笔记六) —— JNI交互间数组的处理
- Android性能测试工具原理
- android学习经常使用的数据文件夹
- 揭开Android获取应用签名的神秘面纱
- Android广告轮播图效果实现
- Android—如何查看android源码