一、Android简介

    Android的中文意思是“机器人”,它的logo也是一个可爱的小机器人。Android系统是一款基于Linux内核的操作系统,该系统最初是由Android公司的Andy Rubin带头开发的,后来Android公司被Google于2005年收购。
    世界上第一部Android系统手机是T-Mobile G1,于2008年9月23日发布。Android系统由“开放手机联盟”共同研发,这个组织主要由一些科技公司和手机公司组成,如HTC,华为、中国移动、三星等。Android源码是开源的,源码采用Apache License协议发布。

二、后起之秀——Android的制胜法宝

    作为后起之秀的Android又是怎么跟塞班(Symbian)、iOS、Windows Phone(简称WP)竞争在夹缝中生存发展的呢。最典型的应该是以下几项:

1、开放的平台

    这里说的“开放”有两层含义:一是Android系统源码的开源和免费;二是Android系统可以在各种各样的硬件平台上运行,如各个手机生产商生产的手机,Android TV,路由器,行车记录仪等。

2、高度组件化的架构思想

    Android的应用是基于组件的,在开发Android应用时,开发者只需要在配置文件里描述组件的功能和需求,然后由系统统一根据需求和功能来调用。每个组件都可以跨进程跨应用来被调用的,即Android系统的设计思想已经模糊了进程应用的概念,在Android系统平台里的界限粒度进一步被细化为组件
    在Android里引入了任务(Task)的概念。也就是说,用户要完成的某一项工作可能是由若干个应用(apk)的若干个组件共同协调来完成的。而给用户的感觉仍是在同一个应用中完成任务的。

3、与Web的完全融合

    在Android应用中可以轻松嵌入HTML、JavaScript,并且,还可以轻松完成JavaScript和Java代码的交互。进一步模糊了C/S和B/S之间的界限。

4、丰富的网络服务的接入

    对于任何一台Android手机都已经不是孤立的一台设备了,它无缝的支持了WiFi、CDMA、GPRS、EDGE、GPS等通信网络。你可以方便的在网上听歌、看电影、办公、社交等。

5、高度自由定制的平台

    只要我们有足够的想象力,我们可以自由定制属于我们自己的个性化环境,比如拨号、短信、Home、浏览器等核心组件都是可以自由替换的。

三、Android系统的架构

    Android系统架构采用分层结构,共5层(官方架构图为4层),从高到低依次为应用层框架层系统运行库层硬件抽象层Linux内核层。层次关系图如下:

android系统架构.png

1、应用层

    应用层是由运行在Android设备上的所有应用构成,如浏览器、拨号、微信、腾讯QQ、通讯录等。

2、框架层

    框架层主要由组件管理服务(Activity Manager)、窗口管理服务(Window Manager)、控件系统(View System)、资源管理服务(Resources Manager)等构成。这到层为上一层的应用提供API。

3、系统运行库层

    系统运行库层由核心类库运行时构成。核心类库主要由C/C++编写的库组成,其中包括SQLite、Webkit、libc等。运行时主要由Java核心类库和Dalvik虚拟机构成。这一层为框架层提供了访问硬件的能力和必要的服务。

4、硬件抽象层

    硬件抽象层是为厂商提供的标准接口,厂商根据接口实现相应的硬件功能。

5、Linux内核层

    Linux内核层主要由驱动、内存管理、进程、网络协议等组成。
附官方系统架构图如下:


1000px-Android-System-Architecture.svg.png

更多相关文章

  1. 【起航计划 002】2015 起航计划 Android(安卓)APIDemo的魔鬼步伐
  2. C#开发Android手机应用全接触(mono for android)
  3. android - 为安全而设计 - 2 - 开发文档翻译
  4. 用PHP编写Android应用程序
  5. 用VS2010开发Android应用的配置方法
  6. 如何低成本打造品牌Android软件?
  7. 谈Android四大组件之Activity篇
  8. android camera研究
  9. android - 为安全而设计 - 2 - 开发文档翻译

随机推荐

  1. 【Android】Android(安卓)设置Activity窗
  2. Android应用开发——系统自带样式Android
  3. Android(安卓)中 drawable下的 android:s
  4. android:inputType参数类型说明
  5. Android中的android:layout_width和andro
  6. Selector与Shape的基本用法
  7. Android(安卓)开发教程 (包括全部ApiDemo
  8. android布局属性预览一
  9. 【android】仿照长按home键 恢复后台运行
  10. Android(安卓)资源文件中@、@android:typ