先上图:
Android体系结构:
1、Application应用程序:原生的app(系统app+第三方app)
2、Framework层:各种管理器Manager。为app提供服务。
3、系统库、Android运行时:libc(C语言写的)。
4、Linux内核层:各种硬件驱动driver。
Android编译过程
1、文件、图片、String等资源编译到R.java文件中。(相当于小区片警===管理资源)
2、文件生成.java文件
3、将java文件编译成class文件。(class里包含类、方法等信息,有很多冗余数据,移动端硬件等资源要求不适合运行class文件)
4、编译成.dex文件。(更轻量化,适合移动端运行)
5、打包成未签名.apk文件。(没有注册信息)
6、生成签名.apk文件。
7、对齐数据。(许多资源被编成二进制,不是很整齐,需要数据对齐)
网友评论