• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 【原】tinker dex文件格式的dump工具tinker-dex-dump,dextinker-dex-dump

【原】tinker dex文件格式的dump工具tinker-dex-dump,dextinker-dex-dump

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了【原】tinker dex文件格式的dump工具tinker-dex-dump,dextinker-dex-dump等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

【原】tinker dex文件格式的dump工具tinker-dex-dump,dextinker-dex-dump


序言

Tinker是微信推出的热更新开源项目,同其它热更新方案相比具有补丁包小,支持类,so,资源文件的替换等优点。其中在类替换的方案里自主研发了DexDiff算法,使得补丁包变的更小。DexDiff算法最终生成的产物虽然也以.dex作为格式后缀,但和实际虚拟机中的dex文件是二种完全不同的格式。  

 

关于tinker-dex-dump

  tinker-dex-dump是针对dexdiff生成的.dex格式文件,查看其内部数据的工具。主要目的是帮助大家对dexdiff生成的dex格式有一个更加直观的了解。如果使用该工具能让你更容易了解tinker相关原理,那该工具的目的也就达到了,也算是个人对Tinker的致敬。该工具已上传到github,github地址为https://github.com/LaurenceYang/tinker-dex-dump

 

tinker-dex-dump的使用方法  

1、首先下载tinker-dex-dump.jar文件

下载地址

2、通过命令行方式执行  

命令格式

 java -jar tinker-dex-dump.jar --dex *.dex [--header] [--section section-name]

--dex           必选项,后接需要dump的dex路径  

--header      可选项,显示header区域信息

--section      可选项,显示section区域信息,后接要显示的section名字  

--section参数列表,参数的意义同其命名

  • StringData
  • TypeId
  • ProtoId
  • FieldId
  • MethodId
  • ClassDef
  • TypeList
  • AnnotationSetRefList
  • AnnotationSet
  • ClassData
  • Code
  • DebugInfo
  • Annotation
  • StaticValue
  • AnnotationsDirectory

范例一:显示头部信息  

java -jar tinker-dex-dump.jar --dex classes.dex --header

显示头部信息

 

范例二:显示StringData区域信息  

java -jar tinker-dex-dump.jar --dex classes.dex --section StringData

显示section信息

 

范例三:显示帮助信息  

java -jar tinker-dex-dump.jar --help

显示帮助信息

 

tinker dex格式参考

tinker dex格式主要包括两大部分:头部和各个section区域的操作列表,如下图:

 tinker dex format

 

更多关于tinker dex格式可以参考Tinker项目的DexPatchGenerator文件

 

更多Tinker源码解析的文章请参考:

  • Android热更新开源项目Tinker源码解析系列之一:Dex热更新
  • Android热更新开源项目Tinker源码解析系列之二:资源热更新
  • Android热更新开源项目Tinker源码解析系类之三:so热更新
  • Android热更新开源项目Tinker集成实践总结

 

转载请标明本文来源:http://www.cnblogs.com/yyangblog/p/6282118.html
更多内容欢迎star作者的github:https://github.com/LaurenceYang/
如果发现本文有什么问题和任何建议,也随时欢迎交流~

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 【原】tinker dex文件格式的dump工具tinker-dex-dump,dextinker-dex-dump

相关文章

  • 2017-05-224.4.1 ContentProvider初探
  • 2017-05-26Android SwipeRefreshLayout下拉刷新与上拉加载+滑动删除
  • 2017-05-26andorid build tools 19.1,andorid19.1
  • 2017-05-26Linux内核系列—操作系统开发之进入32位保护模式,linux保护模式
  • 2017-05-26当EditText编辑时 hint 在 6.0 手机上显示不出来,edittexthint
  • 2017-05-26android的消息机制
  • 2017-05-26Android开发学习之路--异步消息Handler,Message,Looper和AsyncTask之初体验
  • 2017-05-26Android开发学习之路--图表实现(achartengine/MPAndroidChart)之初体验
  • 2017-05-26Android Studio导入第三方库(SlidingMenu)教程,androidslidingmenu
  • 2017-05-26Android开发笔记(5)——方法调用(基础),android笔记

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 切割字符串,js分割字符串
    • 关于Pacemaker集群配置的版本
    • 安卓开发树形控件之ExpandableListView(一),expandablelistview
    • 开发 Material Design+RxJava+Retrofit+MVP App 参考资料,rxjavaretrofit
    • 致DBA:为什么你经常犯错,是因为你做的功课不够
    • 使用ContentProvider访问非数据库数据
    • android 关于4.0之后不能直接获取SD卡外部存储路径的问题,androidsd
    • Android中的沉浸式状态栏效果,android沉浸状态栏
    • PostgreSQL空值null参与运算的处理方法
    • Linux目录与文件权限的意义

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有