Android APK反编译图文详解_Linux编程_Linux公社-Linux系统门户网站 你好,游客 登录 注册 搜索 首页Linux新闻Linux教程数据库技术Linux编程服务器应用Linux安全Linux下载Linux认证Linux主题Linux壁纸Linux软件数码手机电脑 首页 → Linux编程 背景: 阅读新闻 Android APK反编译图文详解 [日期:2014-03-07] 来源:Linux社区 作者:ithomer [字体:大 中 小] 近期在自学Android应用开发技术,想既然是用Java开发的应该很好反编译从而得到源代码吧,Google了一下,确实很简单,以下是我的实践过程。 在此郑重声明,贴出来的目的不是为了去破解人家的软件,完全是一种学习的态度,不过好像通过这种方式也可以去汉化一些外国软件。 本文Android反编译教程,测试环境: Win7 Ultimate x64 Ubuntu 12.04 x86_x64 反编译工具包 下载 Android反编译工具包,内含图形和命令两种反编译方式,命令支持Windows和Linux平台,亲测验证成功! ------------------------------------------分割线------------------------------------------ FTP地址:ftp://ftp1.linuxidc.com 用户名:ftp1.linuxidc.com 密码:www.linuxidc.com 在 2014年LinuxIDC.com\3月\Android APK反编译图文详解 下载方法见 http://www.linuxidc.com/Linux/2013-10/91140.htm ------------------------------------------分割线------------------------------------------ 一、Apk反编译得到Java源代码 下载上述反编译工具包,打开apk2java目录下的dex2jar-0.0.9.9文件夹,内含apk反编译成java源码工具,以及源码查看工具。 apk反编译工具dex2jar,是将apk中的classes.dex转化成jar文件 源码查看工具jdgui,是一个反编译工具,可以直接查看反编译后的jar包源代码 dex2jar 和 jdgui 最新版本下载,分别见google code: dex2jar(google code) jdgui(google code),最新版本请见 官方 具体步骤: 首先将apk文件后缀改为zip并解压,得到其中的classes.dex,它就是java文件编译再通过dx工具打包而成的,将classes.dex复制到dex2jar.bat所在目录dex2jar-0.0.9.9文件夹。 在命令行下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex 生成 classes_dex2jar.jar 然后,进入jdgui文件夹双击jd-gui.exe,打开上面生成的jar包classes_dex2jar.jar,即可看到源代码了,如下图: HelloAndroid源码在反编译前后的对照如下: 二、apk反编译生成程序的源代码和图片、XML配置、语言资源等文件 如果是汉化软件,这将特别有用 首先还是要下载上述反编译工具包,其中最新的apktool,请到google code下载 apktool(google code) 具体步骤: 下载上述反编译工具包,打开apk2java目录下的apktool1.4.1文件夹,内含三个文件:aapt.exe,apktool.bat,apktool.jar 注:里面的apktool_bk.jar是备份的老版本,最好用最新的apktool.jar 在命令行下定位到apktool.bat文件夹,输入以下命令:apktool.bat d -f abc123.apk abc123,如下图: 上图中,apktool.bat 命令行解释:apktool.bat d -f [apk文件 ] [输出文件夹] 反编译的文件如下(AndroidManifest.xml为例): 将反编译完的文件重新打包成apk,很简单,输入apktool.bat b abc123(你编译出来文件夹)即可,命令如下: 打包apk后的文件在目录C:\HelloAndroid下,生成了两个文件夹: build dist 其中,打包生成的HelloAndroid.apk,在上面的dist文件夹下,Ok 三、 图形化反编译apk 上述步骤一、二讲述了命令行反编译apk,现在提供一种图形化反编译工具:Androidfby 首先,下载上述反编译工具包,打开Androidfby目录,双击Android反编译工具.exe,就可以浏览打开要反编译的apk 更多Android相关信息见Android 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=11 0 顶一下 国嵌qcd小功能在Ubuntu 12.04上的实现 shell技巧分享 相关资讯 APK Android APK反编译 APK反编译 Java 解析 apk 的签名 (01月01日) APK一个反编译利器Apktool (03/31/2013 15:08:33) 图片资讯 本文评论 查看全部评论 (0) 表情: 姓名: 匿名 字数 同意评论声明 发表 评论声明 尊重网上道德,遵守中华人民共和国的各项有关法律法规 承担一切因您的行为而直接或间接导致的民事或刑事法律责任 本站管理人员有权保留或删除其管辖留言中的任意内容 本站有权在网站内转载或引用您的评论 参与本评论即表明您已经阅读并接受上述条款 最新资讯 shell技巧分享 Linux针对文件和目录的权限设置 Linux自动安装实现 Linux下DNS服务器的安装 LogStash日志分析展示系统 图解Linux系统启动流程 图解制作Mini Linux系统 OpenSSL实现私有CA Linus Torvals为何不中国访问? CentOS 安装Tigase 本周热门 Node.js零起点开发教程 Shell for&while 循环详细总结 Android SD卡路径问题以及如何获取SDCard 内存 Android的onCreateOptionsMenu()创建菜单Menu详 Android核心分析 PyQt4 精彩实例分析 Android UI开发详解之ActionBar Ubuntu 10.04下编译OpenWrt完全新手教程 Linux Shell 脚本中字符串的连接方法 Linux时间函数之gettimeofday()函数之使用方法 Linux公社简介 - 广告服务 - 网站地图 - 帮助信息 - 联系我们本站(LinuxIDC)所刊载文章不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。 Copyright © 2006-2011 Linux公社 All rights reserved 浙ICP备06018118号