Mac系统下对Android apk进行反编译
来源:互联网 发布:科比知乎 编辑:程序博客网 时间:2024/05/17 04:40
最近有一个同事需要去实现android某个功能,自己实现起来感觉到很困难,就看到别人软件实现了此功能。就反编译学了人家的实现方法,让我一下感慨万千,那以后学习和开发项目将方便很多。结合mac系统整理一下反编译android apk的过程。
一 测试环境 Mac osx 10.8.3 macbook pro
二 所需软件
apktool ,主要将apk中的xml文件、图片、语言资源文件等反编译成原状态。
dex2jar,主要将apk反编译成jar包文件。
jdgui,把jar包文件转化成可读写的.java 源文件。
三、配置MAC下的环境变量
为了使软件能在终端命令行下面直接运行,就需要配置他们的环境变量,mac环境变量配置如下:
1、打开终端 2、输入 cd ~ 进入~文件夹 3、输入 touch .bash_profile 回车 4、输入open -e .bash_profile 在TextEdit中打开这个文件
图 1 进入配置文件操作
四、反编译过程
1、apktool 可以用来反编译apk文件,解析出可读的xml文件,同时还可以用来修改xml中的文件进行汉化。下载apktool后通常有:aapt.exe,apktool.bat,apktool.jar 三个文件,假设我的apk文件位于/Users/house/Downloads/eoecn.apk下 ,输入以下命令:apktool d /Users/house/Downloads/eoecn.apk /Users/house/Downloads/test/,如下图
反编译后的效果
2、上面只是把xml源文件转换为可读,源代码文件位于smali文件夹下,所有原文件以smli文件后缀,还不是我们可读的文件。下面要用 dex2jar把apk文件反编译成jar文件,假设我的apk文件解压缩后的dex文件位于/Users/house/Downloads/eoecn/classes.dex下 ,输入以下命令:d2j-dex2jar.sh /Users/house/Downloads/eoecn/classes.dex /Users/house/Downloads/
这样就把dex文件解压成相应的jar文件
3、打开 jdgui程序,打开上面生成的jar包classes-dex2jar.jar,即可看到源代码了
java decompliler 这个工具非常强大不经支持多操作系统,还提供eclipse插件以及intellij插件,通过IDE工具直接查看class文件中 的源代码。
以上是apk 反编译的过程,这些小工具所提供的功能并不紧紧这些,还有非常强大的诸如文件签名,jar包验证等功能。
- Mac系统下对Android apk进行反编译
- Mac系统下对Android apk进行反编译
- Mac系统下对Android apk进行反编译
- Mac系统下对Android apk进行反编译
- Mac系统下对Android apk进行反编译
- Mac下对APK进行反编译
- Mac系统下反编译Android-apk
- Mac下对Android app进行反编译
- Mac 系统下反编译apk
- MAC系统进行Android-APK反编译,使用apktool等工具
- Mac下反编译Android apk
- Android-Mac电脑如何进行APK反编译
- Android中对APK进行反编译
- Android如何对应用程序APK进行反编译?
- mac下反编译Android的apk步骤
- mac下反编译Android的apk步骤
- mac下反编译Android的apk步骤
- mac下反编译Android的apk步骤
- 第十一周项目3-6-判断一个数字是否回文
- 数字三角形
- 植物大战僵尸
- 在MyEclipse中怎么修改Servlet模板
- 为什么寄存器比内存快?
- Mac系统下对Android apk进行反编译
- [Debug]android_ramdump_tool_crash_introduce
- c语言中的字符数组赋值
- 长知识
- 欢迎woshizhoumao在ChinaUnix博客安家!
- 51单片机stc-isp串口下载以及它的设置
- stm32寄存器之TFTLCD
- stm32寄存器之SPFD5420驱动LCD
- stm32寄存器之spi2读写sd卡