Android 反编译 apk 文件

我想看 apk 的源码怎么办?那么就要用到 apk 反编译工具。

先说一下反编译的思路:

1)apk 文件其实就是一个压缩包。将文件后缀 .apk 修改为 .zip 即可通过解压软件打开。打开压缩包可以看见几个文件:

要看源码,只需要关注 classes.dex 就行,这个文件就是 apk 的源码。

2)classes.dex 是被 android sdk 打包好的源码文件,无法直接打开。这时需要一个打开  classes.dex 的工具

3)打开之后的源码是一些 .class 文件,学过 Java 都知道,这些是字节码文件,也是无法直接打开看到 .java 源码。于是,这里也需要一个工具来反编译 .class 文件成 .java 文件。

思路有了,接着介绍工具和作用。

1)apktool —— 打开 apk

2)dex2jar —— 将 classes.dex 转换成 .jar 文件,也就是一堆的 .class 文件

3)jd-gui —— 将 .class 文件转换成我们能阅读的 .java 文件

上菜:

apktool

下载地址:http://ibotpeaches.github.io/Apktool/

dex2jar

下载地址:https://github.com/pxb1988/dex2jar

jd-gui

下载地址:http://jd.benow.ca/

怎么用?

自己看官方文档,我不说,别这么懒,才几个单词。

好吧,这里也有一个中文的链接,不过有些过时了,因为工具已经更新了

http://blog.csdn.net/vipzjyno1/article/details/21039349

时间: 2024-10-22 20:02:05

Android 反编译 apk 文件的相关文章

MAC笔记本下Android 反编译apk文件最新版本

这篇文字主要是针对MAC笔记本反编译APK的教程,都是最新的,首先需要的工具罗列出来: apktool dex2jar JD-JUI 主要就是这3个工具了. apktool作用:主要是用来反编译res下面的xml文件. dex2jar作用:主要是用来反编译APK查看源代码的. JD-JUI作用: 查看dex2jar反编译出来的jar文件. 如果APK混淆后,一般只能清除的查看出xml文件的内容也就是res下的所有文件,代码基本看不懂,也就是一些a b c 这样的名字,不可大致可以看看基本的,看看

android反编译odex文件

关于android的反编译工具,相信大家并不陌生 如APK-TOOL,dex2jar APK-TOOL 用于反编译出布局文件 下载地址http://code.google.com/p/android-apktool/downloads/list dex2jar 用于将dex反编译成.jar包 下载地址:http://code.google.com/p/dex2jar/downloads/list 生成的jar包可用jd-gui来查看(前提是代码未被混淆) 但是如果我们从rom里面提取出的apk是

如何防止Android反编译apk,爱加密进行安卓加密保护!

近年来,针对网购.交友网站,发送伪装成"样品"或"私照"的钓鱼.木马链接类诈骗逐渐增多:套取个人信息类诈骗手法有所升级,如借卡转账.机票退订等,要求提供银行卡卡号.身份证号及短信验证码:大家熟悉的网络买卖,买家可能"易容",网上的店铺也可能是"僵尸".尤其是近日<E天下>头条报道<小心!不明链接勿乱按>后,引来众多读者反馈:骗子是怎样伪装的呢?常用的伎俩有哪些?现在,爱加密就来为大家一一揭晓,帮助大家在

Android反编译apk(一)

为什么反编译: 做为个人开发,有时候看到精美的UI效果,好玩的功能,是不是有想可以参考学习的冲动.反编译android的apk,就是从apk中把资源(如图片,音乐,布局文件等等),源代码. 推荐阅读: 对于反编译apk,请先阅读文章<<反编译Android应用>>,<<Android APK反编译就这么简单 详解(附图)>>,好好看,看完自己下载几个apk试试,应该就对反编译apk心里有个底了. 我的笔记: (1).相关软件: dex2jar------将a

用apktool批量反编译apk文件

写在前面的话 这个是一个十分简单的脚本,非常简单.为什么要写,因为我是来骗分数的. 应用场景 主机上有一堆APK文件,是按照类别分好的,现在用apktool 反编译它们,然后在按照类别和apk的名字来存储它们 如图所示 实现 要使用这个脚本,你需要安装一下apktool.注释已经很详细了,希望可以有用.当然,这个用python实现的,你也可以写个shell脚本. #!/usr/bin/env python # coding=utf-8 ''' @author : chicho @date : 2

反编译APK文件的三种方法(转)

因为学习Android编程的需要,有时我们需要对网络上发布的应用项目进行学习,可是Android项目一般是通过APK文件进行发布的,我们看不到源代码,嘿嘿,办法总会有的,而且不止一个... ps:对于软件开发人员来说,保护代码安全也是比较重要的因素之一,不过目前来说Google Android平台选择了Java Dalvik VM的方式使其程序很容易破解和被修改,首先APK文件其实就是一个MIME为ZIP的压缩包,我们修改ZIP后缀名方式可以看到内部的文件结构,类似Sun JavaMe的Jar压

敲响警钟:反编译apk文件

1.解压apk文件,得到classes.dex文件: 2.下载dex2jar工具(下载地址:https://github.com/pxb1988/dex2jar): 3.在命令行中使用dex2jar,将classes.dex文件还原成JAR文件: 4.下载并使用jd-gui工具打开刚刚获得的JAR文件,开始反编译源码: 就这样,简单的几步,就获得了一个apk的源码,虽然不是所有的源码,毕竟例子中的apk也做了代码混淆,但是相对于市面上很多没有做过代码混淆的App,我们要想拿到它的源码,多么容易!

利用SublimeText查看Android反编译smali文件

1,首先得下载SublimeText,网址->http://www.sublimetext.com/,我这里下的是SublimeText 2,就以2为例了: 2,安装好后,需要去给它安装一个插件包,地址->https://packagecontrol.io/ 如下图 3,点击如上图的Install Now 按钮后进入如下的页面,然后复制对应的版本下的代码(如图) 4,打开SublimeText 按下快捷键 ctrl+~,或者打开菜单栏View点击Hide Console 显示控制台,并将第3步

使用apktool反编译apk文件

Apktool https://ibotpeaches.github.io/Apktool/install/ 下载地址:Apktool https://bitbucket.org/iBotPeaches/apktool/downloads/apktool_2.3.3.jar 打开cmd终端:java -jar apktool_2.3.3.jar  d  xxx.apk (放在一个目录即可) 原文地址:https://www.cnblogs.com/c-c-c-c/p/10004020.html