往期推荐
所谓的APP,也称作APK文件。本节课我们将探索APP程序是如何安装到手机上的,以及APP程序的内部是由哪些文件构成的。
1.1 APK文件
APK文件是Android Package的缩写,也就是Android安装包。其实,APK文件是以压缩包形式呈现的。通过将打包好的APK文件直接传到Android模拟器或Android手机中执行、安装,就形成我们使用的各种APP程序。
1.2 APK文件目录
1.首先下载“扑克王.apk”文件到桌面上,并且修改文件后缀为“.zip”格式,“.zip”代表压缩包格式。这样在桌面上就形成了一个压缩包的文件。双击打开压缩包文件,出现了一个文件目录,包含有7项文件,如下图所示。
2.每一种文件夹中还存放着一种或几种文件,我们来了解一下:
(1)assets:此目录下存放的是不经过appt编译的资源文件。
(2)lib:此文件夹下存放的都是so文件。
(3)META-INF:此文件夹里面存放的是apk的签名文件,打开它,如下图所示。
3.我们可以看到,它包含三种文件:
CERT.RSA文件:签名证书文件,里面存放的是公钥和加密算法描述。
CERT.SF文件:摘要加密,里面存放的是加密文件,使用私钥对摘要明文加密后得到的密文信息,只有使用私钥配对的公钥才能解密该文件。
MANIFEST.MF文件:即文件摘要,里面存放的是程序清单文件,它包含包中所有文件的摘要明文。
(4)res:这个文件夹里面存放的是资源文件,是经过appt编译后的文件。打开这个文件夹,有六种不同的文件,如下图所示。
以下三个是常用的文件夹的功能:
drawable开头的文件夹:里面存放的是图片和xml文件。
layout文件夹:里面存放的都是布局文件。
menu文件夹:里面存放的是菜单文件。
以下三个文件夹的功能了解即可:
anim文件夹:存放的是动画文件。
color文件夹:存放的是颜色文件。
mipmap文件夹:存放的也是图片资源。
(5)AndroidManifest.xml 文件:是一个配置文件,里面包含组件的声明和配置。
(6)classes.dex文件:是一个可执行文件,可以直接在Android系统上运行。
(7)resources.arsc文件:是经过aapt 打包res目录下的资源文件后生成的文件。
小结
本次主要分享了APK文件的概念及APK文件的构成,同时掌握了APP安装的过程和原理,了解多种文件夹及文件夹里存放的文件种类。
如果你也对安卓逆向感兴趣。可以加下方的群,大家一起讨论问题,或者扫描下方二维码,关注回复 “安卓逆向” 获取免费教程
安卓逆向交流学习:342647370
vx:Yjxiaox