技术宅的结界

 找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 3277|回复: 0
收起左侧

如何让android反编译工具正确处理多dex的apk

[复制链接]

273

主题

451

帖子

4870

积分

用户组: 真·技术宅

UID
2
精华
61
威望
148 点
宅币
3687 个
贡献
131 次
宅之契约
0 份
在线时间
623 小时
注册时间
2014-1-25
发表于 2015-12-24 14:14:22 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有帐号?立即注册→加入我们

x
今天遇到了一个apk中存在(将资源分成)多个hex的情况,这种文件会影响jeb apkide的处理和跳转,因此有必要将多个dex合并
apk本身是压缩文件,类似zip,可以用winrar打开,而dex文件则类似于压缩文件
首先考虑合并hex,发现不存在这样的工具
其次考虑反编译hex得到jar,然后合并jar,然后编译成dex   此种方法,由于dex2jar工具有bug而导致有些文件缺失
最后我考虑dex2smali,将dex解压到同一目录,然后smali2dex合并成dex,最后用aapt add替换apk包中原始dex,过程如下:
工具:dex2jar工具集、aapt、winrar

1.用winrar将demo.apk中多个dex解压  classes.dex  classes2.dex
2.解压dex到同一目录,运行  d2j-dex2smali.bat classes.dex --force -o tmp         d2j-dex2smali.bat classes2.dex --force -o tmp
3.合并为同一dex  d2j-smali.bat -o classes.dex tmp
4.用winrar删除apk的旧dex文件,将dex加入apk中  aapt add demo.apk classes.dex

ok了
回复

使用道具 举报

本版积分规则

QQ|申请友链||Archiver|手机版|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图  

GMT+8, 2020-8-5 19:03 , Processed in 0.091649 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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