Android 简介

欢迎你来到Android世界! Android系统是目前世界上市场占有率最高的移动操作系统,不管你在哪里,都可以看到Android手机几乎无处不在。今天的
Android世界可谓欣欣向荣,可是你知道它的过去是什么样的吗?我们一起来看一看它的发展史吧。2003年10月,Andy Rubin等人一起创办了 Android公司。2005年8月谷歌收购了这家仅仅成立了 22个月的公司,并让Andy Rubin继续负责Android项目。在经过了数年的研发之后,谷歌终于在2008年推出了 Android系统的第一个版本。但自那之后,Android的发展就一直受到重重阻挠。乔布斯自始至终认为Android是一个抄袭iPhone的产品,里面剽窃了诸多iPhone的创意,并声称一定要毁掉Androido而本身就是基于Linux开发的Android操作系统,在2010年被Linux团队从Linux内核主线中除名。又由于Android中的应用程序都是使用Java开发的,甲骨文则针对Android侵犯Java知识产权一事对谷歌提起了诉讼……

1 android 系统架构

1. Linux内核层

Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、wi-n驱动、电源管理等。

2. 系统运行库层

这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL|ES库提供了 3D绘图的支持,Webkit库提供了浏览器内核的支持等。同样在这一层还有Android运行时库,它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。另外,Android运行时库中还包含了 Dalvik虚拟机(5.0系统之后改为ART运行环境),它使得每一个Android应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。相较于Java虚拟机,Dalvik是专门为移动设备定制的,它针对手机内存、CPU性能有限等情况做了优化处理。

3. 应用框架层

这一层主要提供了构建应用程序时可能用到的各种API, Android自带的一些核心应用就是使用这些API完成的,开发者也可以通过使用这些API来构建自己的应用程序。

4. 应用层

所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等程序,或者是你从Google Play上下载的小游戏,当然还包括你自己开发的程序。


android 系统架构图

2 Android已发布的版本

2008年9月,谷歌正式发布了 Android 1.0系统,这也是Android系统最早的版本。随后的几年,谷歌以惊人的速度不断地更新Android系统,2.1、2.2、2.3系统的推出使Android占据了大量的市场。2011年2月,谷歌发布了 Android 3.0系统,这个系统版本是专门为平板电脑设计的,但也是Android为数不多的比较失败的版本,推出之后一直不见什么起色,市场份额也少得可怜。不过很快,在同年的10月,谷歌又发布了 Android4.0系统,这个版本不再对手机和平板
进行差异化区分,既可以应用在手机上,也可以应用在平板上。2014年Google I/O大会上,谷歌推出了号称史上版本改动最大的Android 5.0系统,其中使用ART运行环境替代了 Dalvik虚拟机,大大提升了应用的运行速度,还提出了 Material Design的概念来优化应用的界面设计。除此之外,还推出了 Android Wear A Android Auto. Android TV系统,从而进军可穿戴设备、汽车、电视等全新领域。之后Android的更新速度更加迅速,2015年Google I/O大会上推出了 Android 6.0系统,加人运行时权限功能,2016年Google I/O大会上推出了 Android 7.0系统,加人多窗口模式功能,这也是目前最新的Android系统版本。

Android版本名称Code name Android版本 版本发布时间 对应API
(no code name) 1.0 2008年9月23日 API level 1
(no code name) 1.1 2009年2月2日 API level 2
Cupcake 1.5 2009年4月17日 API level 3,NDK 1
Donut 1.6 2009年9月15日 API level 4,NDK 2
Eclair 2.0.1 2009年12月3日 API level 6
Eclair 2.1 2010年1月12日 API level 7,NDK3
Froyo 2.2.x 2010年1月12日 API level 8,NDK 4
Gingerbread 2.3 – 2.3.2 2011年1月1日 API level 9,NDK5
Gingerbread 2.3.3 – 2.3.7 2011年9月2日 API level 10
Honeycomb 3.0 2011年2月24日 API level 11
Honeycomb 3.1 2011年5月10日 API level 12,NDK 6
Honeycomb 3.2.x 2011年7月15日 API level 13
Ice Cream Sandwich 4.0.1 – 4.0.2 2011年10月19日 API level 14,NDK 7
Ice Cream Sandwich 4.0.3 – 4.0.4 2012年2月6日 API level 15,NDK 8
Jelly Bean 4.1 2012年6月28日 API level 16
Jelly Bean 4.1.1 2012年6月28日 API level 16
Jelly Bean 4.2-4.2.2 2012年11月 API level 17
Jelly Bean 4.3 2013年7月 API level 18
KitKat 4.4 2013年7月24日 API level 19
Kitkat Watch 4.4W 2014年6月 API level 20
Lollipop(Android L) 5.0/5.1 2014年6月25日 API level 21/API level 22
Marshmallow(Android M) 6.0 2015年5月28日 API level 23
Nougat(Android N) 7.0 2016年5月18日 API level 24
Nougat(Android N) 7.1 2016年12月 API level 25
Oreo(Android O) 8.0 2017年8月22日 API level 26
Oreo(Android O) 8.1 2017年12月5日 API level 27
Pie (Android P) 9.0 2018年8月7日 API level 28

3 Android应用开发特色

  1. 四大组件
    Android系统四大组件分另是活动(Activity)、月艮务(Service).广播接收器(Broadcast Receiver)和内容提供器(Content Provider )o其中活动是所有Android应用程序的门面,凡是在应用中你看得到的东西,都是放在活动中的。而服务就比较低调了,你无法看到它,但它会一直在后台默默地运行,即使用户退出了应用,服务仍然是可以继续运行的。广播接收器允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。
  2. 丰富的系统控件
    Android系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮的界面。当然如果你品位比较高,不满足于系统自带的控件效果,也完全可以定制属于自己的控件。
  3. SQLite数据库
    Android系统还自带了这种轻量级、运算速度极快的嵌人式关系型数据库。它不仅支持标准的SQL语法,还可以通过Android封装好的API进行操作,让存储和读取数据变得非常方便。
  4. 强大的多媒体
    Android系统还提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃,等等,这一切你都可以在程序中通过代码进行控制,让你的应用变得更加丰富多彩。
  5. 地理位置定位
    移动设备和PC相比起来,地理位置定位功能应该可以算是很大的一个亮点。现在的Android手机都内置有GPS,走到哪儿都可以定位到自己的位置,发挥你的想象就可以做出创意十足的应用,如果再结合功能强大的地图功能,LBS这一领域潜力无限。

4 搭建开发环境

4.1 需要的开发工具

  • JDK。IDK是Java语言的软件开发工具包,它包含了 Java的运行环境、工具集合、基础类库等内容。
  • Android SDK。Android SDK是谷歌提供的Android开发工具包,在开发Android程序时,我们需要通过引人该工具包,来使用Android相关的API。
  • Android Studio。在很早之前,Android项目都是用Eclipse来开发的,相信所有Java开发者都一定会对这个工具非常熟悉,它是Java开发神器,安装ADT插件后就可以用来开发Android程序了。而在2013年的时候,谷歌推出了一款官方的IDE工具Android Studio,由于不再是以插件的形式存在,Android Studio在开发Android程序方面要远比Eclipse强大和方便得多。

4.2 搭建开发环境

下载地址
studio 安装教程
第一次使用Android Studio时你应该知道的一切配置

你可能感兴趣的:(Android 简介)