第001天:第一行Android代码

本文介绍了Android开发的基础,包括Android系统架构的四层:Linux内核层、系统运行库层、应用框架层和应用层。强调了开发者在Android生态中的重要性,解释了Android Studio作为开发工具的优势。内容涵盖Android版本历史、主要系统版本及其市场份额,并指导读者如何搭建Android开发环境,包括JDK、Android SDK和Android Studio的安装。文章还详细讲述了创建第一个Android项目的过程,包括创建HelloWorld项目、运行模拟器,并分析了项目结构、资源管理和build.gradle文件的用途。此外,还介绍了Android日志工具Log的使用,强调了其相对于System.out.println()的优点。
摘要由CSDN通过智能技术生成
1.1     了解全貌——Android王国简介

       Android从面世以来到现在已经发布了二十几个版本了。在这几年的发展过程中,谷歌为 Android王国建立了一个完整的生态系统。手机厂商、开发者、用户之间相互依存,共同推进着 Android的蓬勃发展。开发者在其中扮演着不可或缺的角色,因为如果没有开发者来制作丰富的应用程序,那么不管多么优秀的操作系统,也是难以得到大众用户喜爱的,相信没有多少人能够忍受没有QQ微信的手机吧。而且,谷歌推出的Google Play更是给开发者带来了大量的机遇, 只要你能制作出优秀的产品,在Google Play±获得了用户的认可,你就完全可以得到不错的经济回报,从而成为一名独立开发者,甚至是成功创业!

          那我们现在就以一个开发者的角度,去了解一下这个操作系统吧。纯理论型的东西也比较无聊,怕你看睡着了,因此我只挑重点介绍,这些东西跟你以后的开发工作都是息息相关的。

1.1.1     Android系统架构

为了让你能够更好地理解Android系统是怎么工作的,我们先来看一下它的系统架构。 Android大致可以分为四层架构:Linux内核层、系统运行库层、应用框架层和应用层。

  1. Linux内核层

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

  1. 系统运行库层

这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据 库的支持,OpenGL|ES库提供了 3D绘图的支持,Webkit库提供了浏览器内核的支持等。

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

  1. 应用框架层

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

  1. 应用层

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

结合图1.1你将会理解得更加深刻,图片源自维基百科。

  1. 1.2     Android已发布的版本

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

下表中列出了目前市场上主要的Android系统版本及其详细信息。你看到这张表格时,数据 很可能已经发生了变化,查看最新的数据可以访问http://developer.android.com/about/dashboards/

(注意:不要直接打开,复制链接到浏览器打开)

 

 从上表中可以看出,目前4.0以上的系统已经占据了超过98%Android市场份额,因此我们本书中开发的程序也只面向4.0以上的系统,2.x的系统就不再去兼容了。

  1. 1.3     Android应用开发特色

预告一下,你马上就要开始真正的Android开发旅程了。不过先别急,在开始之前我们再来一起看一看,Android系统到底提供了哪些东西,可供我们开发出优秀的应用程序。

  1. 四大组件

Android系统四大组件分另U是活动(Activity)服务(Service).广播接收器(Broadcast Receiver) 和内容提供器(Content Provider )o其中活动是所有Android应用程序的门面,凡是在应用中你看 得到的东西,都是放在活动中的。而服务就比较低调了,你无法看到它,但它会一直在后台默默地运行,即使用户退出了应用,服务仍然是可以继续运行的。广播接收器允许你的应用接收来自各处的广播消息,比如电话、短信等,当然你的应用同样也可以向外发出广播消息。内容提供器则为应用程序之间共享数据提供了可能,比如你想要读取系统电话簿中的联系人,就需要通过内容提供器来实现。

  1. 丰富的系统控件

Android系统为开发者提供了丰富的系统控件,使得我们可以很轻松地编写出漂亮的界面。 当然如果你品位比较高,不满足于系统自带的控件效果,也完全可以定制属于自己的控件。

  1. SQLite数据库

Android系统还自带了这种轻量级、运算速度极快的嵌入式关系型数据库。它不仅支持标准的SQL语法,还可以通过Android封装好的API进行操作,让存储和读取数据变得非常方便。

  1. 强大的多媒体

Android系统还提供了丰富的多媒体服务,如音乐、视频、录音、拍照、闹铃,等等,这一 切你都可以在程序中通过代码进行控制,让你的应用变得更加丰富多彩。

  1. 地理位置定位

移动设备和PC相比起来,地理位置定位功能应该可以算是很大的一个亮点。现在的Android 手机都内置有GPS,走到哪儿都可以定位到自己的位置,发挥你的想象就可以做出创意十足的应用,如果再结合功能强大的地图功能,LBS这一领域潜力无限。

既然有Android这样出色的系统给我们提供了这么丰富的工具,你还用担心做不出优秀的应用吗?好了,纯理论的东西就介绍到这里,我知道你已经迫不及待想要开始真正的开发之旅了, 那我们就开始启程吧!

1.2   手把手带你搭建开发环境

俗话说得好,“工欲善其事,必先利其器”,开着记事本就想去开发Android程序显然不是明智之举,选择一个好的IDE可以极大幅度地提高你的开发效率,因此本节我就将手把手带着你把开发环境搭建起来。

1.2.1    准备所需要的工具

我现在对你了解还并不多,但我希望你已经是一个颇有经验的Java程序员,这样你理解本书的内容时将会轻而易举,因为Android程序都是使用Java语言编写的。如果你对Java只是略有了解,那阅读本书应该会有一点困难,不过一边阅读一边补充Java知识也是可以的。但如果你对Java完全没有了解,那么我建议你可以暂时将本书放下,先买本介绍Java基础知识的书学上两个星期,把Java的基本语法和特性都学会了,再来继续阅读这本书。

好了,既然你已经阅读到这里,说明你已经掌握Java的基本用法了,下面我们就来看一看开发Android程序需要准备哪些工具。

  • JDKO JDKJava语言的软件开发工具包,它包含了 Java的运行环境、工具集合、基础类库等内容。需要注意的是,本书中的Android程序必须要使用JDK 8或以上版本才能进行开发。
  • Android SDKO Android SDK是谷歌提供的Android开发工具包,在开发Android程序时, 我们需要通过引入该工具包,来使用Android相关的APIO
  • Android Studi0o在很早之前,Android项目都是用Eclipse来开发的,相信所有Java开发者都一定会对这个工具非常熟悉,它是Java开发神器,安装ADT插件后就可以用来开发Android程序了。而在2013年的时候,谷歌推出了一款官方的IDEIAndroid Studio, 由于不再是以插件的形式存在,Android Studio在开发Android程序方面要远比Eclipse强大和方便得多。不过由于Android Studio早期的测试版本并不是非常稳定,所以本书的第 1版仍然选用的Eclipse来作用开发工具。而如今,Android Studio已经推出了 2.2版本, 稳定性完全不再是问题,普及程度方面也远超Eclipse,没有比现在更适合的时机来换用 Android Studio 了,因此本书中所有的代码都将在Android Studio上进行开发。

1.2.2   搭建开发环境

当然,上述软件并不需要你去一个个地下载,因为谷歌为了简化搭建开发环境的过程,将所有需要用到的工具都帮我们集成好了,到Android官网就可以下载最新的开发工具,下载地址是: https://developer.android.com/studio/index.htmlo 不过,Android 官网通常都需要科学上网才能访问, 如果你无法访问的话,也可以直接到我的百度网盘去下载,下载地址是:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值