2015-12-21 17:46:04 625浏览
从Android系统组成的角度来讲,我们对于Android开发技术能概括出5个层面来。本文对Android开发系统的分一下类,让读者可以更深层次的了解Android开发。
1、Linux Kernel开发
主要工作是将Linux移植到不同的硬件平台上,并提供相应的硬件驱动。对于大多数硬件设备而言,比如USB接口、网卡、声卡等设备,都有现成的驱动;但对于一些自定义的硬件设备,则需要开发自定义的驱动,同时对于这些专有设备的使用,还必须提供一套Java应用程序可以使用的接口,也就是说,需要与Libraries开发人员协同工作。
2、Libraries开发
Libraries为Application Framework提供服务,主要是调用Linux驱动完成一些硬件操作,并包含一些高效的c/c++函数库。如前所述,如果给一个Android设备增加了一个硬件模块,那么除了要写一个该硬件模块的Linux驱动外,还得用c/c++写一个Libraries来调用驱动,再用Java写一个ApplicationFramework来调用该Libraries,最终,Java应用程序才能使用该硬件设备。
3、Dalvik VM
因为Google一直都没有对Dalvik VM开源,所以,一般不能直接去开发Dalvik,也很少需要去开发Dalvik。
4、Application Framework的开发
这部分内容主要由Google开发,Google已经定义了GUI和系统服务的架构,因此,对于这部分更多的开发是扩展系统服务,而不是重写已有的GUI或者系统服务。
5、应用程序开发
该部分内容包括如何创建一个窗口,如何给窗口中添加一些文字、按钮等。根据用户的输入完成不同的功能,比如播放音乐、存储数据、启动不同的程序、发送短信、拨打电话等,这些都是应用程序干的事情。本书所涵盖的内容仅在应用程序开发。
“Android操作系统”这个叫法往往有点含糊,从Android整个系统组成来讲,它包含了LinuxKernel和Dalvik虚拟机部分;而从应用程序开发的角度来讲,Android开发者关心最多的还是Google所定义的GUI和系统服务框架部分。了解更多Android开发知识,观看扣丁学堂Android视频,让您从零开始学Android不费力。