android逆向学习笔记,小肩膀安卓逆向百集-学习笔记

20190826190850935.png

20190826190909524.png

20190826191025591.png

20190826190924930.png

APK 是 Android PacKage 的缩写,即 Android 安装包。

APK 文件其实是 zip 格式,但后缀名被修改为 apk ,在 windows 上可以通过 winrar 等程序直接解压查看。

解压 apk 后,一般的可看到的目录结构如下:

?

aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82NDM4NTg5LWIyNTFjZTBmYWY5NjQ0MDUucG5nP2ltYWdlTW9ncjIvYXV0by1vcmllbnQvc3RyaXAlN0NpbWFnZVZpZXcyLzIvdy82MDIvZm9ybWF0L3dlYnA

image.png

这里资源文件时相对比较重要的, sdk 文档 ( 中文指南 ) 上有相关的详细介绍:

?

aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82NDM4NTg5LThkOGQ5NmJiZWYwNTZkMzAucG5nP2ltYWdlTW9ncjIvYXV0by1vcmllbnQvc3RyaXAlN0NpbWFnZVZpZXcyLzIvdy85MzUvZm9ybWF0L3dlYnA

image.png

?

aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82NDM4NTg5LTBhMGFkNmYxODVjZjU3OWMucG5nP2ltYWdlTW9ncjIvYXV0by1vcmllbnQvc3RyaXAlN0NpbWFnZVZpZXcyLzIvdy85MzYvZm9ybWF0L3dlYnA

image.png

Android 应用程序的生成过程,输入就是我们在 eclipse 或源码中监理的工程及其下面的源文件。输出就是处理后的 apk 文件。整个过程可以如下图所示:

?

aHR0cHM6Ly91cGxvYWQtaW1hZ2VzLmppYW5zaHUuaW8vdXBsb2FkX2ltYWdlcy82NDM4NTg5LTQ5OTlhYTFjZTRmZDQyNGMucG5nP2ltYWdlTW9ncjIvYXV0by1vcmllbnQvc3RyaXAlN0NpbWFnZVZpZXcyLzIvdy83NzEvZm9ybWF0L3dlYnA

image.png

整个过程的第一步,资源打包的工作,就是 aapt 这个工具完成的。

在最后打包的 apk 中,所有的 xml 文件已经不是原来的文本文件了,是被 aapt parser 后,直接保存下来的 xml 数据结构,这样做的一大好处就是:到手机中无需再次 parser xml 文件,直接读到定义好的数据结构中就可以了。

drawable 中的 png 图片也被 aapt 给优化过了。

所有的资源文件都被自动生成一个索引,并生成到 R.java 中。为什么这么做?我想一个是效率,另一个好处就是最大限度的在编译过程中由编译器给你找错 ( 通过 string 来索引很难做到 ) 。

?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值