前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于反编译的搜索

用apktool和dex2jar反编译 - yueyueniao96的专栏 - 博客频道 - CSDN.NET yueyueniao96的专栏 目录视图 摘要视图 订阅 新年新气象------CSDN2014新版导航就要跟大家见面了 2014年1月微软MVP当选名单揭晓! 消灭0回答,赢下载分 “我的2013”年度征文活动火爆进行中! 专访何海涛:“不正经”程序员的进阶之路 用apktool和dex2jar反编译 分类: Android 2012-05-06 20:30 3500人阅读 评论(1) 收藏 举报 jar反编译工具windows下载工具androidc 一,利用apktool反编译 1,首先在 http://code.google.com/p/android-apktool/downloads/list 下载两个文件:apktool1.4.3.tar.bz2 和apktool-install-windows-r04-brut1.tar.bz2 2,解压第一个文件得到apktool1.4.3.jar 放到c:\windows下, 第二个文件内包含aapt.exe和apktool.bat两个文件同样放到C:\WINDOWS文件夹下。 3,在命令行下输入apktool可以看到一些帮助信息。 4,输入apktool d c:\***\***.apk c:\***\*** 就可以把 c:\***\***.apk 这个apk文件反编译到c:\***\*** 二、利用dex2jar反编译 首先要下载两个工具:dex2jar和JD-GUI 前者是将apk中的classes.dex转化成Jar文件,而JD-GUI是一个反编译工具,可以直接查看Jar包的源代码。以下是下载地址: dex2jar:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip JD-GUI:http://laichao.googlecode.com/files/jdgui.zip 具体步骤: 首先将apk文件,将后缀改为zip,解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的; 解压下载的dex2jar,将classes.dex复制到dex2jar.bat所在目录。在命令行下定位到dex2jar.bat所在目录 运行 dex2jar.bat classes.dex 生成 classes.dex.dex2jar.jar 生成jar文件的截图如下: 运行JD-GUI(jd-gui.exe),打开上面生成的jar包,即可看到源代码了 HelloAndroid源码(编译前的apk源码对照)如下: 二、反编译apk生成程序的源代码和图片、XML配置、语言资源等文件 如果是只是汉化软件,这将特别有用。 首先还是下载工具,这次用到的是apktool 下载地址:http://code.google.com/p/android-apktool/downloads/list 下载:apktool1.4.1.tar.bz2 和 apktool-install-windows-r04-brut1.tar.bz2(两个包都下载) 具体步骤: 将下载的两个包解压到同一个文件夹下,应该会有三个文件:aapt.exe,apktool.bat,apktool.jar 在命令行下定位到apktool.bat文件夹,输入以下命令:apktool d C:\*.apk C:\*文件夹,如下图: 命令行解释:apktool d [apk文件 ] [输出文件夹] 反编译的文件如下(AndroidManifest.xml为例): 特别注意:你要反编译的文件一定要放在C盘的根目录里 将反编译完的文件重新打包成apk,很简单,输入apktool b c:\***文件夹(你编译出来文件夹)即可,命令如下: 打包apk后的文件在目录C:\HelloAndroid下,生成了两个文件夹: build dist 其中,打包生成的HelloAndroid.apk,在上面的dist文件夹下,Ok 注:本android反编译教程,是在Windows 7 Ultimate 64bit ,测试通过 上述反编译工具包下载 另外,作为应用开发者,肯定不希望自己的代码被反编译的,下一遍博客中讲述如何通过混淆代码放在反编译: Android如何防止apk程序被反编译 更多 上一篇:LayoutInflater和MenuInflater用法 下一篇:C#中抽象类和接口的区别 查看评论 * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场 核心技术类目 全部主题 Java VPN Android iOS ERP IE10 Eclipse CRM JavaScript Ubuntu NFC WAP jQuery 数据库 BI HTML5 Spring Apache Hadoop .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP Spark HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap 个人资料 yueyueniao96 访问:20302次 积分:414分 排名:千里之外 原创:14篇 转载:40篇 译文:1篇 评论:3条 文章搜索 文章分类 c/c++(22) 数据结构(4) MYCODE(10) Android(15) PHP(2) MFC(0) JAVA(0) 数据库(0) 程序人生(1) ACM(3) C#/.NET(2) Flex(1) 文章存档 2013年04月(3)2013年03月(1)2012年05月(1)2012年04月(12)2012年03月(36)2011年06月(2) 阅读排行 通过修改hosts文件成功更新Android sdk(4310) 用apktool和dex2jar反编译(3498) 2010年华中科技大学计算机保研机试题(没做出来...)(896) 使用友元,编译出错fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 1786) 的解决(824) 常量指针与指针常量(808) 模拟器联网失败-批处理文件设置android系统中的DNS(656) Windows下Android开发环境配置(587) 利用SQLiteOpenHelper来管理SQLite数据库(559) LayoutInflater和MenuInflater用法(403) 十进制整数,计算对应的二进制数包含多少个1,用位操作(384) 评论排行 通过修改hosts文件成功更新Android sdk(1) 十进制整数,计算对应的二进制数包含多少个1,用位操作(1) 用apktool和dex2jar反编译(1) I have lost my MySQL root or pmauser password 如果删除MySQL的root或者pma用户(0) android 开发环境配置(0) 普里姆(Prim)算法(0) 扩展字符A(0) 求孪生数(亲和数)(0) 二叉树递归创建遍历(0) 辗转相除法Euclid(欧几里德)(0) 推荐文章 最新评论 用apktool和dex2jar反编译 Bossgirls: 试了下“利用dex2jar反编译” 成功,不过就是比人apk防止反编译做的太好了,有的apk神马都看... 通过修改hosts文件成功更新Android sdk H980336071: 我已经修改了,还是没有看到新的packages 十进制整数,计算对应的二进制数包含多少个1,用位操作 wsn010203: int fun(int x) 这个求解释