AI手机网,短视频直播 硬改改机 一键新机 群控软件 刷机定制

 找回密码
 立即注册
搜索
查看: 1426|回复: 8

dex和odex相互转换

[复制链接]
发表于 2022-3-4 11:38:40 | 显示全部楼层 |阅读模式
一、dex和odex
dex是安卓dalvik虚拟机的可执行文件,可以在导出的apk文件里用解压缩软件直接打开。odex是经过优化过的dex。odex一种是从apk程序中提取出来的,与apk文件存放在同一目录,文件后缀为odex,这类odex文件多是Android ROM的系统程序;另一种缓存文件,这类odex仍以dex为后缀,存放在cache/dalvik-cache目录下。存放文件名格式为“apk路径@apk名@class.dex”,例如”,表示/system/app目录下的Calculator.apk程序的odex文件。
二、dex转换为odex
使用dexopt-wrapper可以将dex转换为odex。dexopt-wrapper在安卓2.3以前的源码中可以找到。将dex-wrapper编译后放到手机中。

  • adb push dexopt-wrapper /data/local
  • adb shell chmod 777 /data/local/dexopt-wrapper


随意从apk文件中提取一个dex文件,将其改名为classex.dex,zip将其压缩后改名为HelloDex.zip


  • adb push HelloDex.zip /data/local
  • adb shell
  • cd /data/local
  • ./dexopt-wrapper HelloDex.zip HelloDex.odex



如果执行无错误会有如下输出




  • ./dexopt-wrapper HelloDex.zip HelloDex.odex
  • --- BEGIN 'HelloDex.zip' (bootstrap=0) ---
  • --- waiting for verify+opt, pid=721
  • --- would reduce privs here
  • --- END 'HelloDex.zip' (success) ---
三、odex转换为dex
odex转换为dex的原理就是先将odex转为smali文件,然后将smali文件转为dex文件。需要下载smali.jar和baksmali.jar。
  • java -jar baksmali.jar -x HelloDex.odex


可能会有如下错误:

将手机中的/system/framework文件夹导出。放入odex目录下的framework文件夹内。
执行命令
  • java -jar baksmali.jar -x HelloDex.odex -d framework  //-d 表示指定framework目录
如果无错误会无任何输出,工作目录最终如下,out目录为导出的smali保存目录。

接下来将smali转换为dex
  • java -jar smali.jar out -o OutHelloDex.dex  //将out目录转换为OutHelloDex.dex文件


https://www.bbsmax.com/A/q4zVWYxjJK/

执行命令
如果无错误无任何输出。当前目录下会生成OutHelloDex.dex文件。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
发表于 2022-3-4 11:40:25 | 显示全部楼层
感谢远程协助
发表于 2022-3-4 11:42:14 | 显示全部楼层
这网站可以哦
发表于 2022-3-4 11:43:52 | 显示全部楼层
感谢客服指导
发表于 2022-3-4 11:45:44 | 显示全部楼层
好用,速度比之前快多了,用了感觉很不错
发表于 2022-3-4 11:47:25 | 显示全部楼层
盖了帽了,厉害
发表于 2022-3-4 11:49:10 | 显示全部楼层
过来看看!第一次来这个论坛!来学学技术
发表于 2022-3-4 11:50:48 | 显示全部楼层
非常好
发表于 2022-3-4 11:52:40 | 显示全部楼层
支持-感谢提供
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

技术交流售后群

QQ|小黑屋|手机版|站点找错-建议|AI手机网 |Sitemap



GMT+8, 2024-5-9 08:09 , Processed in 0.157516 second(s), 28 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表