Android架构

当初看第一行安卓代码一直到做完一个app,虽然学的很多,但是做的记录太少了,这次重新梳理一遍。

一,安卓的

1,安卓的四层架构

1)Linux Kernel;

2)Libraries(C或者C++写的,Surface Manager,Media Framework,SQLite,OpenGL做游戏的,FreeType,WebKit,SGL,SSl,libc + Core Libraries,Dalvik Virtual Machine在安卓4.4以后改用了ART);

3)Application Framework(Activity Manager,Window Manager,Content Providers,View System,Package Manager,Telephone Manager,Resource Manager,Location Manager,Notification Manager);

4)Applications(Home,Contacts,Phone,Browser......)

2,ART模式,是Android Runtime的简称。Android4.4以前是利用Dalvik virtual machine进行编译后进行的,每次运行都将代码通过DVM转换成机器码。而ART在安装应用程序的过程中直接预读编译成机器语言,占用较多存储空间。

3,sdkManager的介绍:(DVM).java文件通过编译转换成.class文件,然后通过dx.bat吧所有.class文件转换成一个.dex文件,然后转换成.odex文件,DVM基于寄存器的架构,而JVM是基于栈的架构。

aapt是android应用的打包工具android application package tool

adb是android的调试桥android debug bridge。

4,流程.apk包括.dex,.arsc(resources),uncompiled resources,Android Manifest.xml

    Android Project通过编译和打包成为.apk,然后通过签名,用ADB部署到Device or Emulator.

 

5,四大组件五大布局

布局:1)线性布局;2)相对布局;3)帧布局;4)表格布局;5)绝对布局。

组件:1)Activity;2)Service;3)Content Provider;4)Broadcast Receiver;

你可能感兴趣的:(Android)