返回介绍

5.1 格式分析

发布于 2024-10-10 22:32:15 字数 812 浏览 0 评论 0 收藏 0

首先来脑补一个知识点,Android 中的 apk 程序其实就是一个压缩包,可以用压缩软件进行解压的,如图 5-1 所示。

图 5-1 apk 压缩包

可以看到这里有三个文件:AndroidManifest.xml、classes.dex、resources.arsc,这三个文件都非常重要,本章介绍第一个文件,后续两章分析后两个文件。

只要反编译过 apk 的人都知道 apktool 工具的工作原理就是解析这三个文件格式。因为 Android 在编译成 apk 之后,这个文件有自己的格式,用普通文本格式打开的话是乱码,所以需要解析成能看懂的内容。就像前一章解析 so 文件一样。

既然编译成 apk 之后格式变了,那么就说明谷歌给 AndroidManifest 定义了一种文件格式,只要知道这种格式的话,就可以详细地解析这个文件了,如图 5-2 所示。

这张图详细解析了 AndroidManifest.xml 文件的格式,但是光看这张图可能印象不深,所以要结合一个案例来解析一个文件,才能理解透彻。下面就用一个案例来解析一下吧。

随便找一个简单的 apk,用压缩文件打开,解压出 AndroidManifest.xml 就可以了,然后开始读取内容进行解析。

图 5-2 Android Mainfest.xml 文件格式(见书后彩图)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文