apk文件以及打包流程

本文详细介绍了APK的打包过程,包括aapt打包资源文件生成R.java,处理aidl文件,编译源代码,转换class文件为class.dex,打包成apk,签名,以及对齐处理。重点讨论了res/raw与assets的区别,以及每个步骤中涉及的工具和文件作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:今天的文章挺简单的,也是最应该在最开始写的内容,就是简单的说明一下apk的编译打包流程,只是今天刚想到这个事。想要了解apk的打包流程的同学可以看看该篇文章。

.apk文件

.apk文件其实就是一个压缩文件,把文件的后缀改成.zip就可以用windows解压软件解压了,解压后里面的文件如下:

上图里面都是什么文件: 

  • lib 文件夹里面存放的是so动态链接库,so动态链接库是不需要在做apk打包时一系列压缩处理的。

  • META-INF 签名文件夹,里面存放三个文件,有两个是对资源文件做的SHA1 hash处理,一个是签名和公钥证书。

  • res 资源文件夹,里面还会分animator,anim,color,drawable,layout,menu和raw这几个文件夹。

  • AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)。这个文件是很重要的,里面有我们的Android四大组件和申请的权限。

  • classes.dex Android平台上的可执行文件,Android虚拟机Dalvik支持的字节码文件格式Google在新发布的Android平台上使用了自己的Dalvik虚拟机来定义, 这种虚拟机执行的并非Java字节码, 而是另一种字节码: dex格式的字节码。在编译Java代码之后,通过Android平台上的工具可以将Java字节码转换成Dex字节码。虽然G

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值