apk、dex、odex梳理
APK(Android package):android安装包,由aapt(Android Assert Packaging Tool)把AndroidManifest.xml、资源文件、dex(二进制字节码)文件组合而成。将apk文件修改扩展名为rar,然后解压可已看到目录如下:
METE-INF:存放应用签名证书等信息
res:存放资源文件
AndroidManifest.xml:应用配置文件
classes.dex:应用程序二进制字节码文件
resources.arsc:二进制资源文件
dex(Dalvik VM Excutors):Dalvik虚拟机执行程序,执行前需要优化。
odex(optimizy Dalvik VM Excutors):Dalvik虚拟机执行程序dex文件前,系统会对dex文件做优化,生成可执行文件odex,保存到data/dalvik-cache目录,最后把apk文件中的dex文件删除。
优点:
1.减少了启动时间(省去了系统第一次启动应用时从apk文件中读取dex文件,并对dex文件做优化的过程。)和对RAM的占用(apk文件中的dex如果不删除,同一个应用就会存在两个dex文件:apk中和data/dalvik-cache目录下)。
2.防止第三方用户反编译系统的软件(odex文件是跟随系统环境变化的,改变环境会无法运行;而apk文件中又不包含dex文件,无法独立运行)。
缺点:
1.占用一定的rom,但不是太大
2.不便修改rom及文件(不是太懂)
3.升级被odex的应用,容易出现FC(弹出提示框“等待”或“关闭”)
deodex:第三方的rom,基本上都是deodex的,即apk中直接包含.dex文件,启动应用时从apk中读取dex文件并对之odex优化。
优点:
1.减少rom的占用(没有保存dex到data/dalvik-cache)
2.便于rom的个性化定制和移植;
3.apk便于反编译和修改(升级时不会因为文件位置问题导致FC)
缺点:
1.启动较慢,每次启动应用都要从apk文件中解析dex文件
apk、dex、odex梳理相关推荐
- linux apk 拆分 odex,android平台下,apk、jar、dex、odex、vdex、art文件相互转换,编译和反编译...
apk.jar.dex.odex.vdex相互转换java 1. ? to jar 1.1 odex to jar 1.2 dex to jar 1.3 apk to jar 输出结果可能有损 1). ...
- 风暴数码论坛教程--apk和odex的介绍和合并
一.apk和odex的介绍和合并 (一)APK介绍 APK是Android Package的缩写,即Android安装包.APK是类似Symbian Sis或Sisx的文件格式.通过将APK文件直接传 ...
- Android APK+Dex文件反编译及回编译工具
本帖最后由 zhu891108 于 2012-8-3 11:00 编辑 大家好! 相信很多人玩智能手机,无论是塞班,安卓等等,不只是看重各种软件的功能,而更多的是看重系统的可定制性,可以自己动手DIY ...
- Android APK+Dex文件反编译及回编译工具 v.1.8.0 测试版
可显示APK文件自身图标 _______________________________________________________________________________________ ...
- Android APK+Dex文件反编译及回编译工具(APKDB)v.1.9.2 正式版
http://idoog.me/?p=1913 [Android APK+Dex文件反编译及回编译工具 (APKDB)v.1.9.2 正式版] <APK+Dex文件反编译及回编译工具> 简 ...
- [软件共享] 【强荐】Android APK+Dex文件反编译及回编译工具 v.1.7.2 正式版
该工具非常强大,集成了反编译和回编译APK文件的工具apktool1.3/1.43/1.50版本,可以用于编译ICS4.0和JB4.1的APK文件, 里面还有ZIP刷机包和APK文件的签名工具, 所以 ...
- Android APK+Dex文件反编译及回编译工具 比 APKtool GUI 好千倍
Android APK+Dex文件反编译及回编译工具 v1.7.2 正式版 Soyu Zom 出品 =========================== ...
- linux apk 拆分 odex,APK生成odex,合并odex和apk为完整的apk文件
Android的ROM中有很多odex文件,相对于APK中的dex文件而言这个odex有什么作用呢? 如果你仔细观察会发现文件名时一一对应的,同时那些对应的apk文件中没有dex文件.这样做可以使其厂 ...
- 关于合并apk和odex的实践
目前与合并官方的apk和odex的方法卡住了一段时间,于是我前段时间在百度知道提问了许久,只是还是没人回答,有的也只是一些复制过来的答案,而且不怎么全面,现在写下一篇经过实践整理而来的合并官方apk和 ...
- jadx 支持 Windows、Linux、 macOS,能够帮我们打开.apk, .dex, .jar,.zip等格式的文件
作者:JavaGuide 链接:https://www.zhihu.com/question/20264247/answer/2306405289 来源:知乎 著作权归作者所有.商业转载请联系作者获得 ...
最新文章
- 项目中非常有用并且常见的ES6语法
- Linux常用基本命令[cp]
- 配置Yarn-Resourcemanager HA
- [转]TCP(HTTP)长连接和短连接区别和怎样维护长连接
- 扒一扒中断为什么不能调printf
- SSIS Dataflow使用存储过程不能检索列名
- linux 命令行管理,Linux命令行界面下的用户和组的管理
- 安卓Toast显示提示消息(自定义view,根据子线程消息显示提示)
- 005-垃圾收集算法
- xp共享文件win7访问时不能保存密码
- h5调用摄像头扫二维码_你的H5还没有升级到小程序吗
- 美国计算机游戏设计大学排名,USNews美国大学游戏设计专业排名
- No serializer found for class JSONNull and no properties discovered to create BeanSerializer
- vscode 的工作台配置文件
- C++编译错误C2440“类型转换”: 无法从“void (__thiscall COpenGLWnd::* )(void)”转换为“DuiLib::DUI_PMSG解决办法
- 基金从业考试考前必背
- Hutool做excel的解析
- i7 13700k核显性能 酷睿i713700k参数 i7 13700k功耗
- powerquery分组_Power Query系列 - 排序Ranking
- MYSQL 唯一约束