`
ping8080
  • 浏览: 57761 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
文章分类
社区版块
存档分类
最新评论

apk反向编译

阅读更多
dex2jar和JD-GUI这2个工具配合学习android太靠谱了,所以放上来给大家共享,开源的好处就是好东西大家一起分享。

dex2jar下载地址:http://laichao.googlecode.com/files/dex2jar-0.0.7-SNAPSHOT.zip
JD-GUI下载地址:
windows版JD-GUI:http://laichao.googlecode.com/files/jdgui.zip
     Linux版JD-GUI:http://laichao.googlecode.com/files/jd-gui-0.3.2.linux.i686.tar.gz

1.首先找到Android软件安装包中的classes.dex

把apk文件改名为.zip,然后解压缩其中的classes.dex文件,它就是java文件编译再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件

2.把classes.dex拷贝到dex2jar.bat所在目录。
windows系统下:
在命令行模式下定位到dex2jar.bat所在目录,运行 dex2jar.bat classes.dex ,生成classes.dex.dex2jar.jar

Ubuntu系统下:(3楼正解!)

在终端下定位到dex2jar.sh所在目录,运行
sh dex2jar.sh classes.dex

则可生成classes.dex.dex2jar.jar


3.运行JD-GUI工具(它是绿色无须安装的)

打开上面的jar文件,即可看到源代码


反编译xml
采用apktool进行反编译
《android-apktool》软件软件可以访问它的主页http://code.google.com/p/android-apktool/下 载获得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包都要下。下载 后解开,为了方便使用,按作者的推荐把得到的4个文件复制到C:\Windows文件夹里。

这个工具是Java写的,需要你的电脑安装了JRE或者JDK,并在系统环境变量Path里加入java.exe所在路径。

以上准备工作做好后,就可以用它来反编译APK了。这里我用动态壁纸的APK来做示范。

如果用过动态壁纸,你也许会发现在设置壁纸时,界面的显示有点问题:“动态壁纸”,在手机上中文显示为“当前壁纸”。这是“动态壁纸选择 器”LiveWallpapersPicker.apk的翻译错误造成的。

(假设LiveWallpapersPicker.apk放在C盘根目录)

开始 > 运行,输入cmd,回车。 apktool d "C:\LiveWallpapersPicker.apk" "C:\LiveWallpapersPicker"
复制代码(命令行解释:apktool d 要反编译的文件 输出文件夹)


改完后,就可以重打包了。还是在cmd命令行里,输入: apktool b "C:\LiveWallpapersPicker"
复制代码(命令行解释:apktool b 要打包内容所在文件夹)
就可以了。生成的APK在C:\LiveWallpapersPicker\dist文件夹里,叫out.apk。

这个out.apk是没有签名的,所以不能直接装到手机里。签名工具和方法见http://www.hiapk.com/bbs/thread-21261-1-1.html, 这里不说了。

签名后得到的APK,就是可以装到手机里的了。


分享到:
评论
1 楼 ping8080 2013-04-09  
下载地址:
http://code.google.com/p/android-apktool/downloads/list

相关推荐

    安卓反向编译.APK文件

    安卓反向编译.APK文件,查看java代码。 一、用压缩软件打开apk,得到五个文件或文件夹 1、META-INF 2、res 3、AndroidManifest.xml 4、classes.dex 5、resources.arsc 二、xml文件是被压缩过的,可以使用...

    反编译工具,apk逆向工具

    反编译的工具,apk逆向工具,可以用于反编译,可将apk文件逆向转换为代码,从class.dex文件里提取代码 反编译教程博客:https://blog.csdn.net/Nobody_else_/article/details/83996441

    开源免费 APK 编辑器 APK Editor Studio 1.4.0 中文多语免费版.zip

    APK Editor Studio 是一个功能强大但易于使用的 APK 反向工程工具。提取,编辑或替换 APK 资源,图像和图标;添加翻译,创建自己的 APK mod 或了解其内部结构。多种便捷工具将帮助您轻松更改应用程序图标,应用程序...

    一键轻松反编译解包+重新打包安卓APP 神器下载

    各大市场APP软件质量良莠不齐,很多应用滥用权限窃取用户隐私、嵌入过多广告影响用户体验,亦或者你想了解软件后台的运作原理,甚至是要对系统和软件进行美化等等,这都需要对APK进行反向编译,以达到修改应用权限、...

    APK 编辑器 APK Editor Studio 1.4.0 中文多语.zip

    APK Editor Studio 是一个功能强大但易于使用的 APK 反向工程工具。提取,编辑或替换 APK 资源,图像和图标;添加翻译,创建自己的 APK mod 或了解其内部结构。多种便捷工具将帮助您轻松更改应用程序图标,应用程序...

    apk改之理.rar

    可以将已经打包好了的apk文件 进行反向编译 查看及重新修改源码 然后再重新打包成自己的apk,反编译非常快,经测试可以使用

    反编译Apk2Java

    Apk2Java.exe由于版本较旧,有些会反向失败,但最终都会得到xml和res,xml文件可以用AXMLPrinter2.jar进行反向。 可以先把apk解压,剥离出classes.dex,再使用工具集里的dex2jar-0.0.7.8-SNAPSHOT,可以反向出jar...

    反编译apk后打包

    该文件里面的资源包已经替换成最新(2013年7月16日 15:51:50),目的只为学习。

    安卓修改大师下载(apk修改工具)V3.1.1.0 官方最新版

    通过已经打包的APK安装包作为模板,反编译后,动态修改配置文件或者SMALI代码中的渠道标志来实现批量重新多渠道打包,由于不是源代码级别的打包,所以大大提升了批量打包的速度和效率。 随机包名,应用名打包 对于...

    Android反编译工具for Windows,内附使用说明

    反编译的定义--计算机软件反向工程(Reverse engineering)也称为计算机软件还原工程,是指通过对他人软件的目标程序(比如可执行程序)进行“逆向分析、研究”工作,以推导出他人的软件产品所使用的思路、原理、...

    apktool_2.3.3.jar

    apktool.jar是一个反向工程的工具包, app这个反编译工具必须用到的必备jar包,此处附上apktool.jar的 最新 jar包及 简单使用方法 apktool是一个Android反编译时常用的apk资源提取工具,能够查看并提取apk中的源代码...

    apktool2.3.3.jar

    apk反编译工具,更多详情请访问https://ibotpeaches.github.io/Apktool/ 或者百度apktool.jar 简介: 一个反向工程的工具,第三方,封闭,二进制Android应用程序。它可以将资源解码到几乎原始的形式,并在修改后...

    如何通过反编译的方式提升APK的会员级别

    本教程通过安卓修改大师的代码布局定位功能,来自动定位布局和代码,通过分析代码,向大家展示反向工程和分析的思路。另外,为了方便大家跟随学习,下面也附带了本教程对应的apk,大家可以一边对照学习,一边操作,...

    android逆向神器jeb_1.4_full破解版

    反向工程或审计APK文件,并减少许多工程师的分析时间。JEB的独特功能是,其Dalvik字节码反编译为Java源代码的能力。无需DEX-JAR转换工具。特别是当处理混淆的或受保护的代码块。JEB的强大的用户界面,使您可以检查...

    memtester-static-4.6.0-r1.apk

    这是memtester的预编译二进制文件,无需安装,直接在linux中运行即可(./memtester 100M 10 > Memtesterlog.txt &)主要用于测试物理内存中可能存在的故障。memtester主要测试以下内容:数据线、地址线、地址范围、...

    eFOIA:反向DHA eFOIA应用

    信息自由法反向DHA eFOIA应用通过下载。 没有验证它是否保持不变。 md5,sha1,sha256已下载APK的总和:ab71bb0b0b37f1385210ae1ff61aba60 * eFOIA 1.2_ [ 0ea8fce699091fe1400623604bbeb7e040c506bb * eFOIA 1.2_ ...

    无法反编译出java源码-Android-Decompiler:Andorid反编译器作为网络服务

    项目灵感来自于帮助人们轻松反编译/反向工程一个 android apk 文件。 最初打算成为一个网站,我确实获得了一个域(androiddecompilers.com)。 由于反编译是一个资源密集型过程,运行大约 4 个月后无法跟上服务器...

    如何利用安卓修改大师在任意安卓应用中添加弹窗功能

    安卓修改大师可以在没有源代码的情况下,直接反编译已经打包的APK安装包,通过修改SMALI代码实现添加和去除部分功能,并在应用的任何地方添加任意代码,增加任意任何您想实现的功能。本教程通过对最近流行的“最美手...

    GDA-android-reversing-Tool:GDA是C ++中新的快速,强大的反编译器(无需Java VM即可工作),可用于APK,DEX,ODEX,OAT,JAR,AAR和CLASS文件。 它支持恶意行为检测,隐私泄漏检测,漏洞检测,路径解决,打包程序标识,变量跟踪,反混淆,python&java脚本,设备内存提取,数据解密和加密等

    GDA是新的Dalvik字节码反编译器,以C ++实现,具有以下优点:分析速度更快,内存和磁盘消耗更低,并且反编译APK,DEX,ODEX,OAT文件的能力更强(自3.79开始支持JAR,CLASS和AAR文件) 。 GDA完全独立,并且无需...

Global site tag (gtag.js) - Google Analytics