android odex文件作用,android反编译odex文件

关于android的反编译工具,相信大家并不陌生

如APK-TOOL,dex2jar

APK-TOOL 用于反编译出布局文件

L3Byb3h5L2h0dHAvaW1nLm15LmNzZG4ubmV0L3VwbG9hZHMvMjAxNDA1LzE1LzE0MDAxNTM1ODhfMzA0MC5qcGc=.jpg

dex2jar 用于将dex反编译成.jar包

L3Byb3h5L2h0dHAvaW1nLm15LmNzZG4ubmV0L3VwbG9hZHMvMjAxNDA1LzE1LzE0MDAxNTM1ODhfMzExNC5qcGc=.jpg

生成的jar包可用jd-gui来查看(前提是代码未被混淆)

可是假设我们从rom里面提取出的apk是不能反编译出源代码

由于android系统为了加快内置应用的启动时间,会将dex从apk中提取出来优化成odex(二者都是可运行文件)

所以这就须要我们先将odex转化为dex再进行反编译

这就须要用到下面四个文件:

L3Byb3h5L2h0dHAvaW1nLm15LmNzZG4ubmV0L3VwbG9hZHMvMjAxNDA1LzE1LzE0MDAxNTM1ODlfMzg2Mi5qcGc=.jpg

只是在反编译odex的时候光有源文件还不够,还须要依赖rom里面framework下的odex。详细依赖程度视情况而定,最简单的方式就是将framework下的odex所有copy过来就可以

以下以红米rom为例,反编译Phone资源

如图示:

L3Byb3h5L2h0dHAvaW1nLm15LmNzZG4ubmV0L3VwbG9hZHMvMjAxNDA1LzE1LzE0MDAxNTMxNjBfOTIyOS5qcGc=.jpg

system\framework下放置好所依赖的odex文件

输入java -jar baksmali-2.0.3.jar -d ./system/framework -x Phone.dex

正常会生成out目录

再输入java -jar smali-2.0.3.jar out/ -o classes.dex

打包生成的class.dex就是我们要的东西了

以下附上測试用的资源文件

L3Byb3h5L2h0dHAvaW1nLm15LmNzZG4ubmV0L3VwbG9hZHMvMjAxNDA1LzE1LzE0MDAxNTQzNTRfMjQxMC5qcGc=.jpg

心动不如行动,赶紧来尝试一把吧!

L3Byb3h5L2h0dHAvc3RhdGljLmJsb2cuY3Nkbi5uZXQveGhlZGl0b3IveGhlZGl0b3JfZW1vdC9kZWZhdWx0L3Byb3VkLmdpZg==.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值