Android APK系列6-------APK反编译

前面系列提到的工具在此依然有用,比如可以用yaff2img浏览器或者unyaffs来解压system.img,如果手里是手机,则需要用豌豆荚或360手机助手,设置直接用adb把apk读出来。也可以用系列5中的apktool-gui-1.3.5去反编译apk和dex

下面尝试用apktool命令行去反编译。

A:apk反编译

到http://code.google.com/p/android-apktool/downloads/list上去下载

apktool1.4.3.tar.bz2及windows和linux上的版本文件

apktool 命令
./apktool d demo.apk demo    反编译 demo.apk到文件夹demo

B:  odex转dex

http://code.google.com/p/smali/downloads/list

下载下面4个文件。

现在我们要对CardManager.odex进行反编译,以CardManager.odex为例。

//注意:这里要有core.jar:ext.jar:framework.jar:android.policy.jar:services.jar文件支持。这个 apk 所在的 rom 里面的一些 jar 文件,都在 /system/framework 里面: core.jar, ext. jar, framework. jar, android.policy. jar, services.jar和对应的.odex文件,把这些文件放在CardManager.odex同一级目录

1.    运行java -jar baksmali-1.3.2.jar -a 12 -x CardManager.odex会生成一个out文件夹,里面的文件以.smali结尾

2.    生成 classes.dex文件, 运行 java -jar smali-1.3.2.jar out/ -o classes.dex

3.    生成classes_dex2jar.jar文件

到http://code.google.com/p/dex2jar/downloads/list下载dex2jar

解压后进入目录去运行,windows用dex2jar.bat. linux用dex2jar.sh.

dex2jar.bat ../test/classes.dex   把上个目录的test目录下的classes.dex转成jar

最后会在../test/下生成classes_dex2jar.jar

4.    运行jd-gui打开classes_dex2jar.jar。就ok了。

在http://java.decompiler.free.fr/?q=jdgui下载jd-gui.或者使用其它的JAVA反编译工具。

另一种方法:

.jar文件可以用jar –xvf 文件名.jar 命令解压,或者把扩展名改为.rar后用winrar解压

然后用jad -o -r -sjava -dsrc 所在目录名/**/*.class

反编译framework.odex 

java -Xmx512m -jar baksmali-1.3.2.jar --api-level 12 -c:core.jar:bouncycastle.jar:ext.jar:framework.jar:android.policy.jar:services.jar:core-junit.jar -d framework/ -x framework.odex

Android APK系列6-------APK反编译相关推荐

  1. .Net 转战 Android 4.4 日常笔记(7)--apk的打包与反编译

    原文:.Net 转战 Android 4.4 日常笔记(7)--apk的打包与反编译 apk(android package)就是我们安卓系统的安装文件,可以在模拟器和手机中直接打开安装,从项目中打包 ...

  2. Android TV下LeanbackLauncher的反编译,AS重新打包修改

    本文介绍Android 7.1平台下Google LeanbakLauncher的反编译流程,并使用AS工具重新打包修改. 最近需要开发一款TV桌面应用,调研了各类桌面,如当贝桌面,小米桌面,开源的猫 ...

  3. android 混淆 去掉log,Android去掉/混淆Log,反编译都看不到

    原标题:Android去掉/混淆Log,反编译都看不到 出发点: 当然是由于编程习惯太好,打了一堆中文log,其实只是想给测试看.然而如果包被反编译,看log基本都能理解流程了,有点尴尬.所以此文主要 ...

  4. Android 的 dex2jar 和 jd-gui 反编译 apk 源代码

    2019独角兽企业重金招聘Python工程师标准>>> 要得到 apk 中的源文件,可以这样: 1.把dex文件反编译为jar文件的工具.(dex2jar) http://code. ...

  5. Android优化系列之apk瘦身

    概述 为什么APK要瘦身.APK越大,在下载安装过程中,他们耗费的流量会越多,安装等待时间也会越长:对于产品本身,意味着下载转化率会越低(因为竞品中,用户有更多机会选择那个体验最好,功能最多,性能最好 ...

  6. 超详细!apk安装包快速反编译,多种反编译及失败的解决方案(包含classes.dex的反编译,新增加快速反编译)

    如要转载,请贴出原地址:https://blog.csdn.net/Nobody_else_/article/details/83996441 众所周知,我们开发所用的手机App安装包都是apk文件, ...

  7. Android之用jadx进行反编译

    利用开源项目jadx反编译Android应用 利用Github开源项目jadx可以直接对 .dex, .apk, .jar, .class 类型的文件进行直接反编译 对比之前 apktool(解包ap ...

  8. 反编译android 状态栏沉浸,教程:反编译修改实现状态栏时间居左,去除锁屏运营商...

    本帖最后由 Gleam 于 2017-7-30 21:15 编辑 重要的事情说三遍: 操作不当会有风险,如不能开机,systemui无限错误等,修改之前确定是否备份system分区. 操作不当会有风险 ...

  9. Android安全攻防战,反编译与混淆技术完全解析

    之前一直有犹豫过要不要写这篇文章,毕竟去反编译人家的程序并不是什么值得骄傲的事情.不过单纯从技术角度上来讲,掌握反编译功能确实是一项非常有用的技能,可能平常不太会用得到,但是一旦真的需要用到的了,而你 ...

  10. Android聚合SDK母包反编译出包教程

    文章目录 [前言] 一.SDK预处理 1.SDK资源合并 1.1.合并res目录下的资源 1.2.合并libs目录 1.3.合并assets目录 1.4.合并AndroidManifest.xml 1 ...

最新文章

  1. system.out 汉字乱码
  2. cocos2dx 3.3 异步加载纹理
  3. TensorFlow Keras 官方教程
  4. nodejs中httpserver的安装和使用
  5. 虚拟存储器管理(C++实现)
  6. 更新Oracle的Date字段
  7. mysql mysql的所有查询语句和聚合函数(整理一下,忘记了可以随时看看)
  8. 为什么你需要考虑选择SaaS化持续交付产品?
  9. 查看zookeeper注册了哪些服务
  10. 华为手表表盘的数字什么意思_手表的陀飞轮、月相、逆跳都是什么意思?
  11. java 引用类型 String_java基础之 数据类型 值传递 引用传递 String 四种引用类型...
  12. sigmoid画图_博弈画图软件(Window版和MAC版)
  13. 关于ie6常见浏览器兼容问题
  14. Android Display ID 对应关系
  15. 流量贵?裂变营销或是低成本营销的最佳选择!
  16. 一起avi文件播放时没有图像问题的解决(tscc.exe)
  17. 读书笔记-富爸爸穷爸爸-财富自由之路
  18. Rsync: @ERROR: Auth Failed On Module XXX错误原因及解决办法
  19. 美国股市何时使用计算机,2020年股票交易何时开始?香港股市交易时间(图形)...
  20. React Ant Design 通过 DatePicker获取一周的起止时间

热门文章

  1. JavaScript基础函数的配置对象Configuration Objects(020)
  2. Oracle控制文件操作
  3. 学者CIO邓遵红:让人文梦想照进职业现实
  4. 好朋友的爬虫共享资料,真佩服
  5. 十大 Node.js 的 Web 框架,快速提升工作效率
  6. 【机器人】项目疑难杂症
  7. 相机标定的来龙去脉(详解标定原理、畸变矫正原理、使用经验)
  8. 如何理解,互联网架构“高并发”?
  9. pycharm 没有 python template languages_开发效率神器说说Pycharm的骚操作
  10. docker 安装依赖_史上最全Docker环境安装指南-让安装docker简单到爆