Chinaunix首页 | 论坛 | 博客
  • 博客访问: 74722
  • 博文数量: 20
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 510
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-10 16:21
文章分类
文章存档

2014年(20)

我的朋友

分类: 云计算

2014-02-27 10:30:35

  更多学习资料,请登录网站下载:,学习交流QQ群13群:234782055

  android系统架构分从下往上为linux 内核层、运行库、应用程序框架层、和应用程序层。
  Linux kernel:
  负责硬件的驱动程序、网络、电源、系统安全以及内存管理等功能。
  Libraries和 android Runtime:
  Libraries:即c/c++函数库部分,大多数都是开放源代码的函数库,例如webkit(引擎),该函数库负责 android网页浏览器的运行,例如标准的c函数库libc、openssl、sqlite等,当然也包括支持游戏开发2dsgl和 3dopengles,在多媒体方面有mediaframework框架来支持各种影音和图形文件的播放与显示,例如mpeg4、h.264、mp3、 aac、amr、jpg和png等众多的多媒体文件格式。
  Runtime:负责解释和执行生成的dalvik格式的字节码。
  Application framework(应用软件架构):
  java应用程序开发人员主要是使用该层封装好的api进行快速开发。applications:该层是java的应用程序层,android内置googlemaps、e-mail、即时通信工具、浏览器、mp3播放器等处于该层,java开发人员开发的程序也处于该层,而且和内置的应用程序具有平等的位置,可以调用内置的应用程序,也可以替换内置的应用程序。
  应用程序层:
  android应用程序使用框架的api并在框架下运行,这就带来了程序开发的高度一致性,另一方面也告诉我们,要想写出优质高效的程序就必须对整个 applicationframework进行非常深入的理解。精通applicationframework,你就可以真正的理解android的设计和运行机制,也就更能够驾驭整个应用层的开发。
  总结:
  下层为上层服务,上层需要下层的支持,调用下层的服务,这种严格分层的方式带来的极大的稳定性、灵活性和可扩展性,使得不同层的开发人员可以按照规范专心特定层的开发。

阅读(1392) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~