一、用.rar打开apk文档,得到文档结构图如下所示
二、将classes.dex文件解压出来,然后使用工具反编译成.jar文件,再进一步反编译出java文件
1.在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XXX”,XXX指的是你要反编译的apk中的classes.dex文件所在路径及名称,比如:我的dex2jar.bat在D:\Android\apk_decode\dex2jar-0.0.7-SNAPSHOT路径下, classes.dex在D:\Android下,所以: 你进入dex2jar.bat路径下后,输入dex2jar.bat D:\Android\classes.dex,这样会生成一个jar文件。
2.用rar解压出jar文件中的class文件,然后用jad或DJ Java Decompiler反编译工具将.class文件反编译成.java文件
3.不解压出jar中的class文件,直接用JD GUI工具打开jar文件
4.步骤2和3选择其中一个即可,建议用步骤2,步骤3可能出现乱码
三、上面操作只能得到class文件,下面利用Google提供的apktool得到xml文件
1. 下载apktool,可以去Google的官方下载,地址:http://code.google.com/p/android-apktool/得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。解压apktool.jar到 C:\Windows ,解压apktool-install-windows.zip到任意文件夹(例如E盘根目录)。
2. Win+R 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入apktool看看。会列出一些帮助的话就成功了(解释d为加压 第一个路径为你的apk所在的位置。第二个是要输出的位置)
apktool d XXX.apk ABC 反编译XXX.apk到文件夹ABC
3. 在解压后的文件夹中可以得到apk的xml配置文件
四、将“二”中得到的class文件和“三”中得到的xml文件组合成一个android工程,即可得到完整的apk源码。
二、将classes.dex文件解压出来,然后使用工具反编译成.jar文件,再进一步反编译出java文件
1.在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XXX”,XXX指的是你要反编译的apk中的classes.dex文件所在路径及名称,比如:我的dex2jar.bat在D:\Android\apk_decode\dex2jar-0.0.7-SNAPSHOT路径下, classes.dex在D:\Android下,所以: 你进入dex2jar.bat路径下后,输入dex2jar.bat D:\Android\classes.dex,这样会生成一个jar文件。
2.用rar解压出jar文件中的class文件,然后用jad或DJ Java Decompiler反编译工具将.class文件反编译成.java文件
3.不解压出jar中的class文件,直接用JD GUI工具打开jar文件
4.步骤2和3选择其中一个即可,建议用步骤2,步骤3可能出现乱码
三、上面操作只能得到class文件,下面利用Google提供的apktool得到xml文件
1. 下载apktool,可以去Google的官方下载,地址:http://code.google.com/p/android-apktool/得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。解压apktool.jar到 C:\Windows ,解压apktool-install-windows.zip到任意文件夹(例如E盘根目录)。
2. Win+R 运行CMD,用cd命令转到apktool-install-windows所在文件夹,输入apktool看看。会列出一些帮助的话就成功了(解释d为加压 第一个路径为你的apk所在的位置。第二个是要输出的位置)
apktool d XXX.apk ABC 反编译XXX.apk到文件夹ABC
3. 在解压后的文件夹中可以得到apk的xml配置文件
四、将“二”中得到的class文件和“三”中得到的xml文件组合成一个android工程,即可得到完整的apk源码。
发表评论
-
android aidl 主进程子进程间数据相互传递
2012-12-18 11:49 3967android中进程间的通信对与大量的接口的调用的时候,一般是 ... -
android 实现在titlebar上显示进度条
2012-11-13 18:48 867先是在setContextView之前设置界面的样式 requ ... -
android 实现下拉刷新的功能
2012-11-13 15:41 4320在android中有时我们要实现下拉刷新的功能,我在前日人的基 ... -
android aidl进程间方法的调用
2012-10-10 14:21 1646android 进程的通信很多,可以用intent传递数据,可 ... -
listView 点击一个Item效果
2012-01-13 17:20 6本人刚做一个项目需求是这样的:展示通话记录的列表,点击每一条记 ... -
android aidl
2012-01-11 11:12 1058android中的进程间的通信很多,下面粗略的讲解一下如何实现 ... -
android 权限大全
2011-12-22 20:08 890android.permission.ACCESS_CHECK ... -
android Action大全
2011-12-21 20:26 1172String ADD_SHORTCUT_ACTION 动作 ... -
android 自定义桌面
2011-12-03 16:23 14161、 把背景图片push到SDCard中 adb pu ... -
android 游戏开发加载界面获取资源文件中图片ID的集合
2011-12-03 13:18 4980主要给大家介绍如何加载界面的图片。正如前面Abs ... -
android 判断网络是否连接可用
2011-12-03 13:06 1695// 判断网络是否正常 public static boole ... -
android 四种加载模式2
2011-11-16 11:13 1000singleInstance模式解决了这个问题(绕了这么半天才 ... -
activity 的四种加载的模式1
2011-11-16 11:11 1033在android应用的开发中有时会activity之间的重复的 ... -
android 面试题
2011-11-09 20:17 1052android 面试题 1.android中进程和进程间的通信 ... -
android ksoap调用天气预报
2011-11-08 19:27 5133下面例子改自网上例子:http://express.ruank ... -
android NDK
2011-11-03 21:34 2079Cygwin+Android NDK的安装 时 间 版 本 ... -
android 判断sdcard是否存在,以及写入权限
2011-10-16 16:57 5789做android 开发的时候经常涉及到权限的问题,而我们像sd ... -
android bitmap
2011-10-14 11:02 849对于android终端应用软件开发的人员来说图片显示时,如果图 ... -
android popupwindow,调用本地的图库,照相
2011-10-14 10:51 5434我们写项目的时候又是要自定义弹出美观的悬浮操作窗口,这里我们可 ... -
android notification
2011-10-14 10:39 1053前些天刚刚做一个项目的预演,要用到广播通知,一下是一些小的学习 ...
相关推荐
《简单通讯录程序:VB.NET实现与学习指南》 通讯录是日常生活中常见的管理个人联系信息的工具,而在编程领域,构建一个简单的通讯录程序也是初学者常常接触的项目。本篇文章将围绕“简单通讯录”这个VB.NET源码项目...
火星DEM(Digital Elevation Model,数字高程模型)部分数据是一种地理信息系统中的关键元素,用于描绘火星表面的地形特征。这种数据集通常由卫星或探测器在火星轨道上收集,通过对火星表面反射的雷达波进行分析,...
火星坐标转换是一个在GIS(地理信息系统)领域中的特殊概念,主要与中国的北斗卫星导航系统相关。在北斗系统中,为了确保国家安全,采用了独特的坐标系,被称为“火星坐标”或“CGCS2000(中国大地2000坐标系)”。...
火星文,又称网络火星文,是一种在网络社交中广泛使用的非标准文字形式,它结合了汉字、拼音、符号和各种创意拼写,以达到新颖、趣味的表达效果。在IT行业中,尤其是在网页开发中,火星文的转换是一个有趣的挑战,...
人类终于登上了火星的土地并且见到了神秘的火星人。人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法。这种交流方法是这样的,首先,火星人把一个非常大的数字告诉人类科学家,科学家...
"火星坐标互转Java版"这个项目涉及到的就是一种特殊的坐标转换技术,主要用于解决在中国大陆地区地图定位的问题。由于历史原因,中国的地图数据通常采用的是“火星坐标系”,也称为GCJ-02坐标系,它与国际上广泛使用...
电视盒 apk文件 火星直播v1.4.8盒子版【缓冲非常快】 (1)(电视直播视频)电视盒 apk文件 火星直播v1.4.8盒子版【缓冲非常快】 (1)(电视直播视频)电视盒 apk文件 火星直播v1.4.8盒子版【缓冲非常快】 (1)(电视...
本压缩包包含的“易语言源码火星文转换源码”提供了在易语言环境中实现火星文与普通汉字之间转换的功能。 源码文件“火星文转换源码.e”是易语言的工程文件,其中包含了实现火星文转换的核心代码。使用易语言打开此...
5. 火星探测中的科学发现:例如,火星古气候变化的研究、火星大气成分的分析、火星土壤的详细分析等,这些发现为火星是否曾经适宜生命存在提供了科学依据。 6. 火星探测器设计的挑战:探测器的设计和制造面临诸多...
火星文输入法火星文输入法火星文输入法火星文输入法
在IT行业中,GPS坐标系统和火星坐标系统是两个重要的定位参考框架。GPS(全球定位系统)是国际上广泛使用的地球坐标系统,而火星坐标系统则是针对火星探测任务设计的坐标框架,例如中国的天问一号、祝融号等火星探测...
火星文转换器是一种专门用于将普通中文和英文文本转换为火星文格式的软件。这款工具由C#编程语言编写,体现了C#在开发用户界面友好、功能强大的应用程序方面的优势。火星文,又称非主流文字或网络用语,是互联网上...
火星文字转换器是一款专用于处理特殊字符和网络表情符号的工具,它可以帮助用户将常见的汉字、字母、数字转化为各种奇特的“火星文”,也就是网络上流行的一种非标准的文字表达方式。这种转换方式常用于增强文字的...
火星加速器是一款针对网络游戏设计,通过虚拟网卡,动态路由调整,全运营商的节点部署、测速和中转等技术来解决玩家网游中遇到的延时高、登录难、易掉线问题,除支持2000余款国内游戏外,还支持wow、ava等台服网游...
“火星语输入法”是一款超炫的火星文即时转换软件,时下QQ用户的新宠,非主流一族的最爱!请注意,它可不是单纯的输入法软件哦,而是可以兼容所有中文输入法(例如搜狗拼音输入法、极品五笔输入法等)的外挂程序。...
火星坐标与大地坐标的转换是GIS(地理信息系统)领域中的一个重要课题,特别是在军事、航空航天以及卫星定位系统中。这两种坐标系分别对应不同的参考框架,理解它们的差异和转换方法对于进行精确的位置计算至关重要...
1. **火星坐标系统**:火星坐标系统,通常用于航天和遥感应用,是为了在火星表面定位而设计的。由于火星的几何形状和地球不同,因此不能直接使用地球上的坐标系统。在地球坐标系统中进行火星坐标转换通常需要特定的...
易语言火星文解码器是一款专门用于解析和转换火星文的工具,其源码是用易语言编程实现的。易语言是一种中文编程语言,旨在降低编程门槛,让普通用户也能进行程序开发。火星文,又称非主流文字或网络用语,是在互联网...
本话题主要探讨如何使用Java编程语言实现火星坐标系(也称GCJ-02坐标系)与WGS-84(World Geodetic System 1984)坐标系之间的转化。这两个坐标系在中国大陆地图应用中尤其重要,因为根据中国法规,公开发布的地理...