Android系统framework概述
一、android是什么?
二、android的开发工作
Android的开发分为三个类型:
移植开发移动设备系统;
android系统级开发和应用程序开发。
1、移植开发移动设备系统
2、Android系统级开发,指的是扩展android的框架或者是修改bug,这方面比较少,
除非有些开发移动设备的厂商,比如做gps,可以往里面加入一些自己的特定系统东西,这可能导致一些不兼容。当然也可能是简单的修复bug,详细的内容后面还有说。
3、开发应用程序,
这应该是比较主流的开发,也就是给android系统写应用程序。当然
我们这里主要是研究android的framework如何给这些应用程序提供服务的。
总结一下,我们可以把android分为四个层次,从底层往上依次为:linux内核、C/C++库、java框架和java应用程序。移植开发移动设备涉及到linux内核(包括其驱动);android系统级开发涉及到C/C++库的开发及给上层java
框架;
android应用程序开发就是调用java的框架写应用程序。简单的从上到下,android应用程序需要有java框架支持,比如它要发送短信,就需要java框架,java框架其实就是将C/C++库包装成为了一个JNI,而实现具体的功能是C/C++库,
最后驱动硬件完成功能,这也就是linux内核部分。
android
应用框架
提供一系列的服务和系统,包括视图、内容提供器、资源管理器、通知管理器、活动管理器。视图非常丰富:
list、grid、textbox、button等。
内容提供器是使得应用程序可以访问另一个程序的数据。
资源管理器是提供访问非代码的资源访问,如布局文件。
通知管理器,使得程序可以在状态栏中显示自定义的提示信息。
活动管理器,用来管理程序生命周期
)、
android应用程序
Android所有的应用程序都是用java写的,当然现在好像也支持一些脚本语言,如ruby,但是不支持C开发,所谓支持C开发是指jni的形式。