
第1章 初识Android
学习指引
从现在开始,我们将要进入奇幻的Android开发旅程。作为一个开发者来说,掌握Android的使用知识是必备的基础知识。本节将介绍Android入门知识,从而让更多的人了解和喜欢上Android开发。
重点导读
·了解Android的简介。
·了解Android的系统架构。
·熟悉Java环境的配置。
·掌握Android Studio的配置。
1.1 认识Android

Android本意指“机器人”,Google公司将Android的标识设计为一个绿色机器人,表示Android系统符合环保理念。它是一个轻薄短小、功能强大的移动系统,是为手机打造的开放性系统。
1.1.1 Android简介
第一代通信技术(1G):是指最初的模拟、仅限语音的蜂窝电话标准。
第二代通信技术(2G):是指第二代移动通信技术,代表为GSM,以数字语音传输技术为核心。
第三代通信技术(3G):是指将无线通信与国际互联网等多媒体通信结合的新一代移动通信技术。
第四代通信技术(4G):又称IMT-Advanced技术,它包括了TD-LTE和FDD-LTE。
Android操作系统最初是由安迪·鲁宾(Andy Rubin)开发的。2005年被Google公司收购,并于2007年11月5日正式向外界展示了这款系统。
Android发布的主要版本及发布时间如表1-1所示。
表1-1 Android的主要版本及发布时间

1.1.2 Android系统架构
Android的系统架构采用了分层架构的思想。其从上到下共包括4层,分别是应用程序层、应用程序框架层、系统运行库层和Linux内核层。
Android官方给出了一张系统架构图,如图1-1所示。

图1-1 Android系统架构图
1. 应用程序层
该层提供一些核心应用程序包,例如电子邮件、短信、日历、地图、浏览器和联系人管理等。同时,开发者可以利用Java语言设计和编写属于自己的应用程序,而这些程序与那些核心应用程序彼此平等、友好共处。
2. 应用程序框架层
该层是Android应用开发的基础,开发人员大部分情况下是在和它打交道。应用程序框架层包括活动管理器、窗口管理器、内容提供者、视图系统、包管理器、电话管理器、资源管理器、位置管理器、通知管理器和XMPP服务10个部分。在Android平台上,开发人员可以完全访问核心应用程序所使用的API框架。并且,任何一个应用程序都可以发布自身的功能模块,而其他应用程序则可以使用这些已发布的功能模块。基于这样的重用机制,用户便可以方便地替换平台本身的各种应用程序组件。
3. 系统库和Android运行时
系统库包括9个子系统,分别是图层管理、媒体库、SQLite、OpenGL EState、FreeType、WebKit、SGL、SSL和libc。
其中,SQLite是遵守ACID的关系数据库管理系统,它包含在一个相对小的C程序库中;OpenGL(Open Graphics Library,开放图形库)是个定义了一个跨编程语言、跨平台的应用程序接口(API)的规范,它用于生成二维和三维图像。
Android运行时包括核心库和Dalvik虚拟机,前者既兼容了大多数Java语言所需要调用的功能函数,又包括了Android的核心库,如android.os、android.Net、android.media等;后者是一种基于寄存器的Java虚拟机,主要实现对生命周期的管理、堆栈的管理、线程的管理、安全和异常的管理及垃圾回收等重要功能。
4. Linux内核
Android核心系统服务依赖于Linux内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux内核也是作为硬件与软件栈的抽象层。驱动:显示驱动、摄像头驱动、Flash内存驱动、Binder(IPC)驱动、键盘驱动、WiFi驱动、Audio驱动和电源管理等。
1.2 环境配置

Android是基于Java开发的,因此需要先配置好系统的Java开发环境,其次是Android开发环境及模拟器。
1.2.1 Windows下配置Java环境
配置Java环境需要以下几个步骤。
步骤1 在网页浏览器中输入网址https://www.oracle.com,打开Oracle官方首页,如图1-2所示。由于Java被Oracle收购,因此所有后续的Java维护都是由Oracle来完成的。
步骤2 单击左上角的Menu菜单,如图1-3(a)所示。
步骤3 从弹出的Menu菜单中找到Developers选项,并单击Developers菜单项,如图1-3(b)所示。
步骤4 在弹出的Developers子菜单中找到Java选项,并单击Java菜单项,跳转到Java页面,如图1-4所示。

图1-2 Oracle官方首页

图1-3 Menu菜单和Developers子菜单

图1-4 Java页面
步骤5 在Java页面中单击Download链接,跳转到Java SE Overview页面,如图1-5所示。

图1-5 Java SE Overview页面
步骤6 在Java SE Overview页面中单击Downloads标签,切换到Java SE下载页面,找到Java SE 8u191/Java SE 8u192字样,其中Java SE代表Java标准版,还有Java EE代表Java企业版,8u191代表Java的不同版本,由于Java是一款非常热门的软件,更新频繁,因此读者应以届时打开的页面为准,这里给出的是较新版的下载页面,如图1-6所示。

图1-6 Java SE 8u191/Java SE 8u192页面
步骤7 在图1-6页面中单击JDK下方的DOWNLOAD按钮,切换到Java JDK下载页面,找到Java SE Development Kit的不同操作系统及版本选择页面,如图1-7所示。
步骤8 此时接受许可协议才可以下载Java JDK,因此需要选中Accept License Agreement单选按钮,切换到可下载状态,如图1-8所示。

图1-7 Java SE Development Kit 8u191页面

图1-8 接受许可协议页面
步骤9 选择与系统相对应的版本进行下载,这里以Windows x64为例进行演示,单击jdk-8u191-windows-x64.exe链接,在打开的对话框中选择保存文件路径,单击“本地下载”按钮如图1-9所示。
步骤10 双击下载好的安装程序图标,打开的启动安装界面如图1-10所示,单击“下一步”按钮。

图1-9 选择保存文件路径

图1-10 安装界面
步骤11 在“定制安装”对话框中可以更改安装路径,也可以保持默认,这里保持默认,直接单击“下一步”按钮,如图1-11所示。
步骤12 安装过程中可能会弹出“许可证条款中的变更”对话框,单击“确定”按钮即可,如图1-12所示。

图1-11 定制安装

图1-12 许可证条款变更
步骤13 Java JDK安装过程中会提示安装Java JRE,JRE选择与JDK同级的目录即可,如图1-13所示。选择好JRE目录后单击“下一步”按钮,完成安装。

图1-13 安装Java JRE
步骤14 安装完成后右击“此电脑”,在弹出的菜单中选择“属性”,如图1-14所示。
步骤15 在属性对话框中选择“高级系统设置”,如图1-15所示。

图1-14 右键菜单

图1-15 属性对话框
步骤16 在“系统属性”对话框中,选择“高级选项卡”→“环境变量”选项,如图1-16所示。
步骤17 默认安装Java会自动创建环境变量,选择“系统变量”中变量名为Path的环境变量,双击该变量查看如图1-17所示,如果没有添加,按照此格式将JDK及JRE加入系统环境变量即可。

图1-16 高级系统设置

图1-17 创建环境
步骤18 右击“开始”菜单,在弹出的菜单中选择“运行”,如图1-18所示。
步骤19 在打开的“运行”对话框中找到“打开”编辑框并输入cmd,如图1-19所示,单击“确定”按钮。

图1-18 右击“开始”菜单

图1-19 “运行”对话框
步骤20 在打开的cmd命令行窗口中输入java-version命令,如图1-20所示。如果弹出版本信息,则证明Java环境已经搭建完成。

图1-20 测试Java环境
1.2.2 Windows下配置Android Studio环境
配置Android Studio环境需要以下几个步骤。
步骤1 在网页浏览器中输入网址https://developer.android.com/,打开Android Studio官网首页,如图1-21所示。

图1-21 Android Studio官网首页
步骤2 在首页中选择Android Studio,在弹出的菜单中选择DOWNLOAD,打开的下载页面如图1-22所示。

图1-22 下载页面
步骤3 在下载页面中单击DOWNLOAD ANDROID STUDIO按钮后,选中“我已阅读并同意上述条款及条件”单选按钮,如图1-23所示。
步骤4 选择完许可协议后单击“下载ANDROID STUDIO FOR WINDOWS”按钮,在打开的对话框中选择文件保存路径,单击“本地下载”按钮,如图1-24所示。

图1-23 许可协议

图1-24 选择文件保存路径
步骤5 完成下载后,展开文件保存路径,找到下载的文件,如图1-25所示。
步骤6 双击下载好的文件图标,打开的启动安装界面如图1-26所示,单击Next按钮。

图1-25 下载的文件

图1-26 安装界面
步骤7 在打开的界面中确认是否安装模拟器,保持默认,单击Next按钮,如图1-27所示。
步骤8 在打开的界面中选择安装路径,选择完成后单击Next按钮,如图1-28所示。

图1-27 安装模拟器

图1-28 设置安装路径
步骤9 在打开的界面中确认是否创建桌面图标,保持默认,单击Install按钮,如图1-29所示。
步骤10 通过前面的设置,程序开始进入正式安装,如图1-30所示,然后单击Next按钮。

图1-29 创建桌面图标

图1-30 开始安装
步骤11 Android Studio安装完成后,单击Finish按钮,如图1-31所示。
步骤12 配置Android SDK,选中Do not import settings单选按钮,如图1-32所示,然后单击OK按钮。

图1-31 安装完成

图1-32 配置Android SDK
步骤13 启动Android Studio,界面如图1-33所示。
步骤14 初次启动无法访问Android SDK列表,单击Cancel按钮,如图1-34所示。

图1-33 启动Android Studio

图1-34 无法访问SDK列表
步骤15 进入欢迎界面,保持默认,单击Next按钮,如图1-35所示。
步骤16 进入安装向导界面,选中Custom单选按钮自定义安装,单击Next按钮,如图1-36所示。

图1-35 欢迎界面

图1-36 安装向导界面
步骤17 设置软件风格,根据自己的喜好选择即可,单击Next按钮,如图1-37所示。
步骤18 设置Android SDK路径,单击Next按钮,如图1-38所示。

图1-37 设置软件风格

图1-38 设置SDK路径
步骤19 设置模拟器,保持默认,单击Next按钮,如图1-39所示。
步骤20 完成设置后,在确认界面中单击Finish按钮,如图1-40所示。

图1-39 设置模拟器

图1-40 完成设置
步骤21 Android Studio初次启动界面,如图1-41所示。
步骤22 单击Configure下拉按钮,在弹出的菜单中选择SDK Manager选项,如图1-42所示。

图1-41 初次启动界面

图1-42 启动SDK管理器
步骤23 如果硬盘空间足够大,建议勾选Android 4.0之后所有版本的SDK,如图1-43所示。

图1-43 SDK版本选择
步骤24 切换到SDK Tools选项卡,勾选Documentation for Android SDK,即Android开发API帮助文档,如图1-44所示。

图1-44 选择Android开发API帮助文档
步骤25 确认SDK版本及下载项,确认后单击OK按钮,如图1-45所示。
步骤26 授权协议界面,如图1-46所示。在其中选中Accept单选按钮,并单击Next按钮,即可开始下载。

图1-45 确认下载

图1-46 授权协议界面
步骤27 下载Android SDK及选中下载项,等待下载完成,如图1-47所示。
步骤28 Android SDK下载完成,界面如图1-48所示,然后单击Finish按钮。

图1-47 下载Android SDK

图1-48 Android SDK下载完成
1.2.3 配置Genymotion模拟器
Android开发需要使用Android手机或模拟器进行测试,根据实际需要选择相应的测试环境,这里采用模拟器进行开发测试。
配置Genymotion环境需要以下几个步骤。
步骤1 在网页浏览器中输入网址https://www.genymotion.com/,打开Genymotion官网首页,如图1-49所示。
步骤2 Genymotion需要注册才可以进行下载,如何注册这里不做讲解,拥有账号后可单击首页右上角Sign In按钮进行登录,登录页面如图1-50所示。
步骤3 登录完成后,单击Download按钮,进入下载页面,如图1-51所示。

图1-49 Genymotion官网首页

图1-50 登录页面

图1-51 下载页面
步骤4 在下载页面中有两个下载选项,第一项是包含VirtualBox,第二项是单独的Genymotion安装包。由于Genymotion需要VirtualBox支持,因此这里选择第一项包含VirtualBox的安装包,如图1-52所示。

图1-52 安装包选择
步骤5 选择下载好的安装包,双击启动安装。在如图1-53所示的界面中设置安装路径,单击Next按钮。
步骤6 确认在“开始”菜单创建快捷方式等,保持默认,单击Next按钮,如图1-54所示。

图1-53 设置安装路径

图1-54 创建“开始”菜单快捷方式
步骤7 确认创建桌面快捷方式,单击Next按钮,如图1-55所示。
步骤8 启动安装程序,单击Install按钮,如图1-56所示。

图1-55 创建桌面快捷方式

图1-56 启动安装程序
步骤9 安装过程中会提示安装VirtualBox,如图1-57所示。
步骤10 如果单击“取消”按钮,则进入Genymotion安装完成界面,单击Finish按钮即可,如图1-58所示。

图1-57 启动VirtualBox安装

图1-58 Genymotion安装完成
步骤11 如果在步骤9中单击“下一步”按钮,则开始安装VirtualBox。选择VirtualBox安装路径,单击“下一步”按钮,如图1-59所示。
步骤12 选择“注册文件关联”及“在桌面创建快捷方式”,单击“下一步”按钮,如图1-60所示。

图1-59 VirtualBox安装路径

图1-60 自定义安装项
步骤13 在警告暂时中断网络连接界面中,单击“是”按钮,如图1-61所示。
步骤14 启动VirtualBox安装程序,单击“安装”按钮,如图1-62所示。

图1-61 警告界面

图1-62 启动安装程序
步骤15 系统警告是否安装设备软件,单击“安装”按钮,如图1-63所示。

图1-63 系统安全警告
步骤16 完成安装的界面如图1-64所示,单击“完成”按钮。
步骤17 完成VirtualBox安装后,启动效果如图1-65所示。

图1-64 完成安装

图1-65 VirtualBox启动效果
1.2.4 配置模拟器与Android Studio关联
安装完模拟器后,还需要将模拟器与Android Studio进行关联,这样才可以进行开发测试。
配置模拟器与Android Studio关联需要以下几个步骤。
步骤1 双击Genymotion快捷方式图标,如图1-66所示。
步骤2 首次运行Genymotion需要进行登录,欢迎界面如图1-67所示,单击Singn in or enter a licese按钮。

图1-66 Genymotion快捷方式图标

图1-67 首次运行Genymotion
步骤3 登录后会打开个人使用许可界面,如图1-68所示。在其中勾选I have read and understood the terms of the EULA阅读许可,单击Accept按钮。
步骤4 Genymotion启动后的界面如图1-69所示,单击Add按钮。
步骤5 首次启动时没有任何模拟器,如图1-70所示,并且需要进行登录,单击Sing in按钮。
步骤6 在打开的如图1-71所示的Sign in对话框中输入账号和密码,单击Sign in按钮。
步骤7 登录成功后可以选择安卓版本及设备模式,如图1-72所示,单击Next按钮。
步骤8 选择完后会给出系统版本信息,如图1-73所示,然后单击Next按钮。

图1-68 使用许可协议

图1-69 启动后的界面

图1-70 没有任何模拟器

图1-71 登录对话框

图1-72 选择系统版本等

图1-73 系统版本信息
步骤9 下载模拟器的界面如图1-74所示,等待系统镜像下载完毕。
步骤10 系统镜像下载完毕,单击Finish按钮,如图1-75所示。
步骤11 此时,在Genymotion启动界面中会出现下载好的虚拟系统,如图1-76所示。

图1-74 下载系统镜像

图1-75 系统镜像下载完毕
步骤12 单击Settings按钮,切换至ADB选项卡,配置Android SDK路径,如图1-77所示。

图1-76 下载好的虚拟系统

图1-77 配置SDK路径
步骤13 启动Android Studio开发工具,单击File菜单,在弹出的菜单中选择Settings...菜单项,如图1-78所示。
步骤14 在弹出的子菜单中选择Plugins菜单项,如图1-79所示。

图1-78 Settings菜单项

图1-79 Plugins菜单项
步骤15 在打开的对话框下方单击Browse repositories...按钮,如图1-80所示。
步骤16 在打开的对话框中输入geny,开始搜索Genymotion。搜索到如图1-81所示的Genymotion后,单击Install按钮,即可安装该插件。

图1-80 浏览插件库

图1-81 搜索Genymotion
步骤17 安装完插件后重启Android Studio,在快捷工具栏上会多出图标。
步骤18 单击该图标,启动Genymotion配置界面,如图1-82所示。
步骤19 单击...按钮,配置Genymotion安装路径,如图1-83所示。

图1-82 配置Genymotion界面

图1-83 选择Genymotion安装路径
步骤20 再次单击Android Studio中的Genymotion图标,打开的界面如图1-84所示。
步骤21 单击Start按钮,可以启动一个Genymotion模拟器,如图1-85所示。

图1-84 Genymotion设备管理器

图1-85 启动Genymotion模拟器
1.3 就业面试技巧与解析
本章详细讲解了Android的历史及Android的发展过程,还讲解了如何配置开发环境。
Android配置开发环境分为以下3个步骤。
步骤1 配置Java环境,因为Android开发是基于Java语言的。
步骤2 配置Android Studio开发工具,这个工具是Google官方提供的开发工具,当然也有其他Android开发工具,但是官方推荐使用Android Studio。
步骤3 配置模拟器,这里选用的模拟器是Genymotion。该模拟器运行速度快,对系统要求比较低,使用它可以提高开发效率。
1.3.1 面试技巧与解析(一)
面试官:打开cmd命令行窗口,输入javac命令,却提示找不到该命令,是什么原因?
应聘者:首先,检查是否安装Java环境,如果没有安装环境,应先安装并配置Java环境;其次,如果已经安装Java环境,应检查是否正确配置Java环境变量,如果没有正确配置Java环境,也会导致无法找到javac命令。
1.3.2 面试技巧与解析(二)
面试官:安装Android Studio集成开发环境时,如何配置Android SDK?
应聘者:在安装Android Studio开发工具过程中会提示下载Android SDK,这时如果选择下载,系统将自动配置好Android SDK。如果选择稍后下载,等待安装完成后可以启动SDK管理工具进行下载(只需选择存放路径及需要下载的SDK即可)。