第2章 先从看得到的入手,探究活动 第 1 章 开始启程,你的第一行 Android 代码 欢迎你来到 Android 世界!Android 系统是目前世界上市场占有率最高的移动操作系统, 不管你在哪里,几乎都可以看到人人手中都会有一部 Android 手机。虽然今天的 Android 世 界欣欣向荣,可是你知道它的过去是什么样的吗?我们一起来看一看它的发展史吧。 2003 年 10 月,Andy Rubin 等人一起创办了 Android 公司。2005 年 8 月谷歌收购了这家 仅仅成立了 22 个月的公司,并让 Andy Rubin 继续负责 Android 项目。在经过了数年的研发 之后,谷歌终于在 2008 年推出了 Android 系统的第一个版本。但自那之后,Android 的发展 就一直受到重重阻挠。乔布斯自始至终认为 Android 是一个抄袭 iPhone 的产品,里面剽窃了 诸多 iPhone 的创意,并声称一定要毁掉 Android。而本身就是基于 Linux 开发的 Android 操 作系统,在 2010 年被 Linux 团队从 Linux 内核主线中除名。又由于 Android 中的应用程序都 是使用 Java 开发的,甲骨文则针对 Android 侵犯 Java 知识产权一事对谷歌提起了诉讼…… 可是,似乎再多的困难也阻挡不了 Android 快速前进的步伐。由于谷歌的开放政策,任 何手机厂商和个人都能免费地获取到 Android 操作系统的源码,并且可以自由地使用和定制。 三星、HTC、摩托罗拉、索爱等公司都推出了各自系列的 Android 手机,Android 市场上百 花齐放。仅仅推出两年后,Android 就超过了已经霸占市场逾十年的诺基亚 Symbian,成为 了全球第一大智能手机操作系统,并且每天都还会有数百万台新的 Android 设备被激活。目 前 Android 已经占据了全球智能手机操作系统 70%以上的份额。 说了这些,想必你已经体会到 Android 系统炙手可热的程度,并且迫不及待地想要加入 到 Android 开发者的行列当中了吧。试想一下,十个人中有七个人的手机都可以运行你编写 的应用程序,还有什么能比这个更诱人的呢?那么从今天起,我就作为你 Android 旅途中的 导师,一步步地引导你成为一名出色的 Android 开发者。 好了,现在我们就来一起初窥一下 Android 世界吧。 经验值:+5 目前经验值:5 级别:萌级小菜鸟 捡到宝物:Android 前辈遗失的入门级通用修行卡一张。卡略有磨损,但仍可使用。 1 第一行代码——Android 1.1 了解全貌,Android 王国简介 Android 从面世以来到现在已经发布了近二十个版本了。在这几年的发展过程中,谷歌 为 Android 王国建立了一个完整的生态系统。手机厂商、开发者、用户之间相互依存,共同 推进着 Android 的蓬勃发展。开发者在其中扮演着不可或缺的角色,因为再优秀的操作系统 没有开发者来制作丰富的应用程序也是难以得到大众用户喜爱的,相信没有多少人能够忍受 没有 QQ、微信的手机吧?而谷歌推出的 Google Play 更是给开发者带来了大量的机遇,只要 你能制作出优秀的产品,在 Google Play 上获得了用户的认可,你就完全可以得到不错的经 济回报,从而成为一名独立开发者,甚至是成功创业! 那我们现在就以一个开发者的角度,去了解一下这个操作系统吧。纯理论型的东西也 比较无聊,怕你看睡着了,因此我只挑重点介绍,这些东西跟你以后的开发工作都是息息相 关的。 1.1.1 Android 系统架构 为了让你能够更好地理解 Android 系统是怎么工作的,我们先来看一下它的系统架构。 Android 大致可以分为四层架构,五块区域。 1. Linux 内核层 Android 系统是基于 Linux 2.6 内核的,这一层为 Android 设备的各种硬件提供了底 层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi 驱动、电源管理等。 2. 系统运行库层 这一层通过一些 C/C++库来为 Android 系统提供了主要的特性支持。如 SQLite 库提 供了数据库的支持,OpenGL|ES 库提供了 3D 绘图的支持,Webkit 库提供了浏览器内核 的支持等。 同样在这一层还有 Android 运行时库,它主要提供了一些核心库,能够允许开发者 使用 Java 语言来编写 Android 应用。另外 Android 运行时库中还包含了 Dalvik 虚拟机, 它使得每一个 Android 应用都能运行在独立的进程当中,并且拥有一个自己的 Dalvik 虚 拟机实例。相较于 Java 虚拟机,Dalvik 是专门为移动设备定制的,它针对手机内存、 CPU 性能有限等情况做了优化处理。 3. 应用框架层 这一层主要提供了构建应用程序时可能用到的各种 API,Android 自带的一些核心 应用就是使用这些 API 完成的,开发者也可以通过使用这些 API 来构建自己的应用程序。 4. 应用层 所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等 程序,或者是你从 Google Play 上下载的小游戏,当然还包括你自己开发的程序。 2 第2章 先从看得到的入手,探究活动 结合图 1.1 你将会理解得更加深刻,图片源自维基百科。 图 1.1 1.1.2 Android 已发布的版本 2008 年 9 月,谷歌正式发布了 Android 1.0 系统,这也是 Android 系统最早的版本。随 后的几年,谷歌以惊人的速度不断地更新 Android 系统,2.1、2.2、2.3 系统的推出使 Android 占据了大量的市场。2011 年 2 月,谷歌发布了 Android 3.0 系统,这个系统版本是专门为平 板电脑设计的,但也是 Android 为数不多比较失败的版本,推出之后一直不见什么起色,市 场份额也少得可怜。不过很快,在同年的 10 月,谷歌又发布了 Android 4.0 系统,这个版本 不再对手机和平板进行差异化区分,既可以应用在手机上也可以应用在平板上,除此之外还 引入了不少新特性。目前最新的系统版本已经是 4.4 KitKat。 3 第一行代码——Android 下表中列出了目前市场上主要的一些 Android 系统版本及其详细信息。你看到这张表格 时,数据很可能已经发生了变化,查看最新的数据可以访问 http://developer.android.com/ about/dashboards/。 版本号 系统代号 API 市场占有率 2.2 2.3.3 – 2.3.7 3.2 4.0.3 – 4.0.4 4.1.x 4.2.x 4.3 4.4 Froyo Gingerbread Honeycomb Ice Cream Sandwich 8 10 13 15 16 17 18 19 1.2% 19.0% 0.1% 15.2% 35.3% 17.1% 9.6% 2.5% Jelly Bean KitKat 从上表中可以看出,目前 4.0 以上的系统已经占据了 80%左右的 Android 市场份额,而 且以后这个数字还会不断增加,因此我们本书中开发的程序也是主要面向 4.0 以上的系统, 2.x 的系统就不再去兼容了。 1.1.3 Android 应用开发特色 预告一下,你马上就要开始真正的 Android 开发旅程了。不过先别急,在开始之前我们 再来一起看一看,Android 系统到底提供了哪些东西,供我们可以开发出优秀的应用程序。 1. 四大组件 Android 系统四大组件分别是活动(Activity) 、服务(Service) 、广播接收器(Broadcast Receiver)和内容提供器(Content Provider) 。其中活动是所有 Android 应用程序的门面, 凡是在应用中你看得到的东西,都是放在活动中的。而服务就比较低调了,你无法看到 它,但它会一直在后台默默地运行,即使用户退出了应用,服务仍然是可以继续运行的。 广播接收器可以允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的 应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可 能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。 2. 丰富的系统控件 Android 系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮 的界面。当然如果你品味比较高,不满足于系统自带的控件效果,也完全可以定制属于 自己的控件。 3. SQLite 数据库 Android 系统还自带了这种轻量级、运算速度极快的嵌入式关系型数据库。它不仅 4 第2章 先从看得到的入手,探究活动 支持标准的 SQL 语法,还可以通过 Android 封装好的 API 进行操作,让存储和读取数据 变得非常方便。 4. 地理位置定位 移动设备和 PC 相比起来,地理位置定位功能应该可以算是很大的一个亮点。现在 的 Android 手机都内置有 GPS,走到哪儿都可以定位到自己的位置,发挥你的想象就可 以做出创意十足的应用,如果再结合上功能强大的地图功能,LBS 这一领域潜力无限。 5. 强大的多媒体 Android 系统还提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃等等, 这一切你都可以在程序中通过代码进行控制,让你的应用变得更加丰富多彩。 6. 传感器 Android 手机中都会内置多种传感器,如加速度传感器、方向传感器等,这也算是 移动设备的一大特点。通过灵活地使用这些传感器,你可以做出很多在 PC 上根本无法 实现的应用。 既然有 Android 这样出色的系统给我们提供了这么丰富的工具,你还用担心做不出优秀 的应用吗?好了,纯理论的东西也就介绍到这里,我知道你已经迫不及待想要开始真正的开 发之旅了,那我们就开始启程吧! 1.2 手把手带你搭建开发环境 俗话说得好,工欲善其事,必先利其器,开着记事本就想去开发 Android 程序显然不是 明智之举,选择一个好的 IDE 可以极大幅度地提高你的开发效率,因此本节我就将手把手带 着你把开发环境搭建起来。 1.2.1 准备所需要的软件 我现在对你了解还并不多,但我希望你已经是一个颇有经验的 Java 程序员,这样你理 解本书的内容时将会轻而易举,因为 Android 程序都是使用 Java 语言编写的。如果你对 Java 只是略有了解,那阅读本书应该会有一点困难,不过一边阅读一边补充 Java 知识也是可以 的。但如

pdf文档 第一行代码——Android

专业资料 > 工程科技 > 信息与通信 > 文档预览
555 页 0 下载 263 浏览 3.0分
温馨提示:如果当前文档出现乱码或未能正常浏览,请先下载原文档进行浏览。
第一行代码——Android 第 1 页 第一行代码——Android 第 2 页 第一行代码——Android 第 3 页 第一行代码——Android 第 4 页 第一行代码——Android 第 5 页
下载文档到电脑,方便使用
还有 550 页可预览,继续阅读
本文档由 lqtest 于 2020-12-09上传分享
相关精品文档