读书笔记:android设计与实现第一…

做了一段时间的android应用开发,突然想彻底搞清楚android应用的原理,今天开始看android设计与开发,每天发帖,记录知识点,供以后自己回顾。也算是鞭策自己看完这么书,并有所收获:

一,android体系结构:
 1,应用层:在熟悉不过,之前开发的app全是应用层的东西。记账本,码上发,图片浏览,等等
 2,应用框架层:给应用层提供API: ActivityManager,WindowsManager,ContentProviders,ViewSystem,PackageManager,TelephonyMa nager,ResouceManager,LocationManager,NotificationManager,等等,我们在开发APP时会用到这些 API
读书笔记:android设计与实现第一天

 3,系统运行库和系统android运行环境层:
为应用框架层提供服务,主要分两个部分,系统运行库和android运行环境,主要用C和C++实现。第二层,也就是应用框架层为应用层提供的功能,在底层大多是由系统运行库实现,android应用层使用的多媒体,浏览器,数据库,图形引擎等,功能实现位于该层。
至于为什么要分这么多层,请查考这篇博客:
读书笔记:android设计与实现第一天

 4,内核层:
  内核层:基于Linux内核,个人理解实现硬件驱动,进程管理。和硬件直接交互,又对运行的程序进行管理。
动态视角的体系结构:::愚昧呀,也是第一次听说
将android分为两个交互的空间:用户空间,内核空间:
用户空间分为:native子系统和java子系统,通过JNI技术连接在一起,建立在内核空间上
native子系统:NDK开发的App,应用框架层native部分和标准C/C++部分
java子系统:sdk开发的ap,内置app,应用框架层java部分,标准库的java接口组成。
内核空间:linux内核和android扩展支持,android主要包括:Binder,Logger,OOM等机制


框架基础:JNI
JNI在android系统中所处的位置:
读书笔记:android设计与实现第一天
 JNI:java平台上定义的一套标准的编程接口,android体系结构中应用层和应用框架层主要是java语言,所以JNI部分的代码主要在这两层。。。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章