Android程序设计实用教程:AndroidStudio版(txt+pdf+epub+mobi电子书下载)

作者:冯贺 许研 李天峰

出版社:中国铁道出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

Android程序设计实用教程:AndroidStudio版

Android程序设计实用教程:AndroidStudio版试读:

前言

PREFACE

Android是Google公司开发的基于Linux的开源操作系统,自2007年11月推出以来,在短短的几年时间里就超越了称霸移动设备领域十年的诺基亚Symbian系统,成为全球最受欢迎的智能手机平台。尤其是最近几年,Android系统的市场占有率越来越高,基于Android的手机应用也越来越丰富,正在席卷当今整个智能手机产业和移动互联网行业。由于Android的迅速发展,就业市场对Android开发人才的需求猛增,越来越多的开发者纷纷转向Android应用的开发,以适应市场需求,寻求更广阔的发展空间。

目前市面上有很多讲解Android开发基础的图书,但真正适合初学者的并不多。编者从2014年开始接触Android,并于随后的几年中参与了多个项目实践,在此过程中深刻感受到:只有打好、夯实基础,才能更高效、更深入地学习和掌握Android的相关开发知识和技巧,更好地进行Android程序的开发工作。因此,本书面向广大初学者,立足Android基础知识,内容讲解由浅入深,采用Google官方推荐的全新开发工具Android Studio,并结合当前最流行的案例驱动教学模式,通过40余个应用实例来讲解Android基础知识在实际开发中的运用,更适合初学者循序渐进地掌握Android应用程序开发的方方面面。

本书共分为10章,具体如下:

第1、2章主要讲解了Android的基础知识,包括Android的起源与发展、Android系统架构、Android Studio开发环境搭建、布局管理器和UI控件等。通过这两章的学习,读者可以创建简单的应用界面。

第3章主要讲解了Activity,包括Activity的创建、生命周期、启动模式、应用Intent进行数据传递等。通过本章的学习,读者可以实现简单的界面交互操作。

第4章主要讲解了轻量级Activity——Fragment,包括Fragment的创建与使用、生命周期、与Activity间的数据交互等。在应用程序中使用Fragment已经成为Android开发的流行趋势,因此本章特别重要。

第5章主要讲解了Android中的数据存储,包括SharedPreferences、文件存储、SQLite数据库等知识。几乎每个Android应用都会涉及数据存储,因此本章的内容需要读者熟练掌握。

第6章主要讲解了Android四大组件之一的ContentProvider,包括ContentResolver的使用、自定义ContentProvider、ListView控件等内容。内容提供者是Android推荐的实现跨应用共享数据的唯一方式。

第7章主要讲解了多线程与消息处理在Android中的应用,包括多线程基础、Handler消息处理机制、AsyncTask异步任务等,可以综合运用这些技术处理后台的耗时操作。

第8、9章主要讲解了Android中的两个重要组件:广播接收者和服务,通过这两章的学习,读者可以使用广播接收者和服务实现后台程序。

第10章主要讲解了Android开发中的高级知识,包括动画的实现、多媒体、传感器、Android新版本特性等知识。通过本章的学习,读者可以掌握动画的处理、音视频的播放、传感器的使用、最新的Material Design设计规范等技术。

在此提醒各位读者,在学习技术的过程中难免会遇到困难,此时不要纠结于某个知识点,可以先继续往后学习,通常情况下,看过后面的知识讲解或者其他小节的内容后,前面不懂的技术就能够理解了。如果读者在实战演练的过程中遇到问题,建议多思考,理清思路,认真分析问题产生的原因,并在问题解决后多总结。

本书由安阳工学院冯贺、许研和南阳理工学院李天峰担任主编,安阳工学院张阳、洛阳师范学院郭洪涛担任副主编。编写分工如下:冯贺编写了第3章、第4章;许研编写了第1章、第2章;李天峰编写了第7章、第10章;张阳编写了第8章、第9章;郭洪涛编写了第5章、第6章。全书由冯贺负责统稿、定稿。

要特别感谢本书的编辑,没有他们的策划、指导、无私帮助和辛勤工作,就不会有这本教材的出版,在此一并对在本书的编写和出版过程中付出了辛勤汗水的各位表示衷心的感谢!

尽管我们尽了最大的努力,但教材中难免会有不妥之处,欢迎各界专家和读者朋友来函给予批评指正。您在阅读本书时,如发现任何问题或有不认同之处,可以通过电子邮件与我们取得联系,E-mail:jxnffh@163.com。

编者2017年6月于河南安阳第1章Android快速入门

教学目标:(1)了解Android平台架构和系统版本的发展历程。(2)掌握Android Studio开发环境的搭建。(3)掌握使用Android Studio开发Android应用的基本步骤。

Android是Google公司基于Linux平台开发的手机及平板电脑的操作系统。自问世以来,受到了前所未有的关注,并成为移动平台最受欢迎的操作系统之一。本章将引导读者对Android进行快速入门。1.1Android系统概述

Android是专门为移动设备开发的平台,其中包含操作系统、中间件和核心应用等。Android最早由Andy Rubin创办,于2005年被Google收购。2007年11月5日,Google正式发布Android平台,三星、HTC、摩托罗拉、Sony Ericsson等公司都推出了各自系列的Android手机,Android市场上百花齐放。近几年,国内的手机厂商也是各显神通,华为、小米、魅族等品牌都推出了相当不错的Android手机,并且得到了国内外用户的广泛认可。

1.1.1 Android平台架构

为了更好地理解Android的工作方式,可以参看图1-1,从中可以看出Android平台主要包括Linux Kernel、Libraries、Application Framework和Applications四个部分。

1.Linux Kernel(Linux内核层)

Linux Kernel是Android所基于的核心。这一层包括了一个Android设备的各种硬件组件的所有底层设备驱动程序。

图1-1 Android平台架构

2.Libraries(系统运行库层)

Libraries包含程序库和Android运行时。程序库中包含了一些C/C++库,通过应用框架为开发者提供服务,如Webkit库为浏览Web提供了众多功能,SQLite库提供了支持应用程序进行数据存储的数据库。

Android运行时包括核心库和Dalvik虚拟机两部分。核心库中提供了Java语言核心库中包含的大部分功能,使得开发人员可以使用Java编程语言来编写Android应用程序。Android运行时还包括Dalvik虚拟机。每一个Android应用程序都在自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik虚拟机专门针对移动设备进行编写,不仅效率更高,而且占用内存更少。

3.Application Framework(应用框架层)

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

4.Applications(应用程序层)

Applications是面向用户的应用程序,比如系统自带的拨打电话、联系人、浏览器等程序,或者是从Google Play上下载的第三方应用程序,当然还包括开发者自己开发的应用。

1.1.2 Android版本

Android自发布以来历经了相当多数量的更新版本。从1.5版本开始,Android用甜点作为它们系统版本的代号。并且,作为每个版本代表的甜点的尺寸越变越大,然后按照26个字母排序:从Cupcake(纸杯蛋糕)、Donut(甜甜圈)、Éclair(松饼)、Froyo(冻酸奶),到近几年发布的Lollipop(棒棒糖)、Marshmallow(棉花糖)和Nougat(牛轧糖)。表1-1列出了Android不同版本及其相应的代号。

表1.1 Android不同版本及其对应的代号

Android 5.0是Google于2014年10月15日(美国太平洋时间)发布的全新Android操作系统。北京时间2014年6月26日0时,GoogleI/O2014开发者大会在旧金山正式召开,发布了Android 5.0的开发者预览。本次Android 5.0系统代号为Lollipop(棒棒糖),所以大家也很亲切地称呼它为Android L系统。Android 5.0提供的新特性包括:

● 全新Material Design设计风格。

● 支持多种设备。

● 全新的通知中心设计。

● 支持64位ART虚拟机。

● Project Volta电池续航改进计划。

● 全新的“最近应用程序”。

● 改进安全性等。

Android的6.0版本,即当时盛传已久的Android M,在Google2015年的I/O大会上被正式发布。一个在业内已经被热议的议题是:Android M“为工作升级而生”(Android for Work Update)。有业内人士解释道:“Android M将把Android的强大功能拓展至任何你所能看到的工作领域。”

根据Android系统以往的惯例,每一代新系统往往会根据其字母代号,对应一个关于甜点的全名。按照这种命名的传统,Android[字母]这种新模式也将意味着,一款新口味Android“甜点”即将出现。

GoogleI/O2015大会于2015年5月28日举行。在发布会上代号为Marshmallow(棉花糖)的Android 6.0系统正式推出。在原有Android 5.x新特性的基础之上,Android 6.0进一步提供了以下更实用的功能:

● 大量漂亮流畅的动画。

● 相机新增专业模式。

● 支持文件夹拖动应用。

● 原生的应用权限管理。

● Now on Tap功能。

● 支持RAW格式照片。

Android7.0即Nougat(牛轧糖)已于2016年8月22日正式推送。但目前的市场占有率不高,根据Google官方的最新统计数据显示,目前安装率最高的版本是“棒棒糖”,其次是“棉花糖”。

1.1.3 Android功能

鉴于Android的开源以及制造商可对其自由定制的特点,因此没有固定的软硬件配置。然而,Android操作系统本身支持如下功能。

1.数据存储

Android内置SQLite轻量级关系型数据库管理系统来负责存储数据。

2.网络

Android操作系统支持所有的网络制式,包括GSM/EDGE、IDEN、CDMA、TD-SCDMA、EV-DO、UMTS、Bluetooth、Wi-Fi、LTE、NFC和WiMAX。

3.消息传递

Android支持SMS和MMS。

4.浏览器

Android基于开源的WebKit核心,并集成Chrome的V8 JavaScript引擎。在Android 4.0内置的浏览器测试中,HTML5和Acid3故障处理中均获得了满分。

5.媒体支持

Android支持以下媒体:WebM,H.263、H.264(in3GPor MP4container),MPEG-4SP,AMR、AMR-WB(in 3GP container),AAC、HE-AAC(in MP4 or 3GP container),MP3,MIDI,FLAC,WAV,JPEG,PNG,GIF,BMP。如果用户需要播放更多格式的媒体,可以安装其他第三方应用程序。

6.硬件支持

Android支持加速度传感器、陀螺仪、气压计、摄像头、GPS、键盘、鼠标和无线设备。

7.多点触控

Android支持多点触摸控制屏幕。

8.多任务处理

Android支持多任务应用。

9.流媒体支持

Android支持RTP/RTSP的流媒体以及(HTML5

10.无线共享功能

Android支持用户使用本机充当“无线路由器”,并且将本机的网络共享给其他智能手机,其他设备只需要通过Wi-Fi查找到共享的无线热点,就可以上网。

1.1.4 Android五大优势特色

1.开放性

在优势方面,Android平台首先就是其开放性,开放的平台允许任何移动终端厂商加入Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益丰富,一个崭新的平台也将很快走向成熟。开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商;而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。

2.挣脱运营商的束缚

在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。自从Android上市以来,用户可以更加方便地连接网络,运营商的制约减少。随着3G至4G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。

3.丰富的硬件选择

这一点还是与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千姿百态、各具功能特色的多种产品。功能上的差异和特色,却不会影响到数据同步甚至软件的兼容。

4.不受任何限制的开发商

Android平台提供给第三方开发商一个十分宽泛、自由的环境。因此不会受到各种条条框框的限制。可想而知,会有多少新颖别致的软件诞生。但“不受限制”也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制正是留给Android的难题之一。

5.无缝结合的Google应用

如今叱咤互联网的Google已经走过十多年的历史。从搜索巨人到全面的互联网渗透,Google服务(如地图、邮件、搜索引擎等)已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝结合这些优秀的Google服务。1.2搭建开发环境——Android Studio“工欲善其事,必先利其器。”Android应用开发因为涉及代码编辑、UI布局、打包等工序,最好使用一款IDE。并且,选择一个好的IDE可以极大幅度地提升开发效率。Google最早提供了基于Eclipse的ADT作为开发工具,后于2013年GoogleI/O大会发布基于IntelliJ IDEA开发的Android Studio。后者正式版发布之后,Google宣布不再持续支持ADT。自Android Studio发布以来,更新的速度非常快。Android Studio相较ADT而言,有更快的运行速度、更智能的代码自动补全、更好的版本管理等特性。因此,后面的章节将采用Android Studio作为应用程序的开发工具。本节先来介绍如何搭建Android Studio开发环境。

1.2.1 系统要求

Android Studio的系统要求如表1-2所示。

表1.2 Android Studio的系统要求

结合上表,对于硬件方面,要求CPU和内存尽量大。由于开发过程中需要经常重启模拟器,而每次重启都会消耗一定的时间(视机器配置而定),因此使用高配置的机器能节省不少时间;此外,硬盘空间也要充足。Android SDK(7.0)全部下载大概需要4GB左右的硬盘空间,并且Android Studio的安装目录也会随着使用时间的推移逐渐占用更多的存储空间,具体原因下一小节会进行介绍。

对于软件需求,需要注意的是JDK的版本不能低于7。接下来,正式安装Android Studio之前,我们先来学习一下如何下载、安装与配置JDK。

1.2.2 JDK的下载

Java Development Kit(JDK)即Java开发工具包,是Sun公司(2009年被Oracle收购)针对Java开发人员发布的免费软件开发工具包,也就是Java SDK(Software Development Kit)。自从Java推出以来,JDK已经成为使用最广泛的Java SDK。作为Java语言的SDK,普通用户并不需要安装JDK来运行Java程序,只需要安装JRE(Java Runtime Environment)。JDK包含了JRE,同时包含编译Java源码的编译器javac.exe,包含很多Java程序调试和分析的工具,如jconsole、jvisualvm等,还包含了Java程序编写所需的文档和demo示例程序。下面以JDK8为例,介绍下载JDK的方法。具体步骤如下:(1)打开浏览器,在地址栏中输入https://www.oracle.com/index.html,进入Oracle的官方主页,如图1-2所示。(2)选择Downloads选项卡,选择JavaforDevelopers,如图1-3所示,然后跳转到如图1-4所示的下载页面。(3)接下来,在下载页面中选择“JavaPlatform(JDK)8u131”(当前JDK的最新版本),跳转到如图1-5所示的页面。(4)在新打开的页面中同意协议并根据计算机硬件和操作系统选择适当的版本进行下载,如图1-6所示。

图1-2 Oracle官方主页

图1-3 选择JavaforDevelopers

图1-4 JavaSE下载页面

图1-5 JDK下载页面

图1-6 下载适当的JDK版本

1.2.3 JDK的安装

下载完适合自己系统的JDK版本后,就可以进行安装了。下面以Windows系统为例,讲解JDK的安装步骤。(1)双击刚刚下载的JDK安装程序,弹出如图1-7所示的JDK安装向导对话框。然后单击“下一步”按钮。(2)在打开的如图1-8所示的对话框中,单击“更改”按钮,将安装的位置修改为“D:\Java\jdk1.8.0_131\”。

图1-7 JDK安装向导对话框

图1-8 JDK安装功能及位置选择对话框

注意:

在Windows系统中,软件默认安装到Program Files文件夹中,该路径中包含一个空格。通常建议将JDK安装到没有空格且不带中文字符的路径中。(3)单击“下一步”按钮开始安装,如图1-9所示。(4)安装结束后,弹出如图1-10所示的JRE安装路径选择对话框,单击“更改”按钮,将安装路径修改为“D:\Java\jre”。(5)单击“下一步”按钮进行安装,安装完成后,弹出图1-11所示的对话框,单击“关闭”按钮,JDK就安装好了。

图1-9 JDK安装进度窗口

图1-10 JRE安装路径选择对话框

图1-11 JDK安装完成对话框

1.2.4 JDK的环境变量配置

前面的步骤只是完成了JDK的开发环境安装。接下来还要通过一系列的环境变量的配置才能使用JDK环境进行Android/Java开发。环境变量的配置包括JAVA_HOME、PATH和CLASSPATH三个部分。(1)右击“计算机”,依次选择“属性”→“高级系统设置”→“环境变量”→“系统变量”→“新建”,如图1-12所示。(2)在打开的“新建系统变量”对话框的“变量名”文本框中输入JAVA_HOME,在“变量值”文本框中输入D:\Java\jdk1.8.0_131,即JDK的安装路径。然后单击“确定”按钮,完成JAVA_HOME的配置,如图1-13所示。

图1-12 配置环境变量

图1-13 配置JAVA_HOME环境变量

注意:

环境变量名不区分大小写,即JAVA_HOME也可以写成java_home。(3)配置CLASSPATH。在图1-12所示的“环境变量”对话框中,查看“系统变量”一栏是否有CLASSPATH变量。如果没有,则单击“新建”按钮;如果已经存在,则选中CLASSPATH选项,单击“编辑”按钮,然后在“变量名”文本框中输入CLASSPATH,在“变量值”文本框中输入D:\Java\jre\lib(根据JRE的安装路径填写)。这里需要注意,如果CLASSPATH变量已经存在,“变量值”新添加的部分与前面的部分用“;”号隔开,如图1-14所示。

图1-14 配置CLASSPATH环境变量(4)配置PATH。与配置CLASSPATH相似,在“变量名”文本框中输入PATH,在“变量值”文本框中输入D\Java\jdk1.8.0_131\bin(根据JDK安装路径填写)。依然需要注意,如果PATH环境变量已经存在,添加的部分须与前面部分用“;”号隔开,如图1-15所示。(5)至此,JDK的环境变量已经配置完成,接下来检查安装是否成功。首先单击“开始”按钮,然后依次选择“所有应用程序”→“附件”→“命令提示符”,如图1-16所示。

图1-15 配置PATH环境变量

图1-16 打开Windows的命令提示符窗口(6)完成上一步的操作之后,就进入了命令提示符窗口。在该窗口中输入java-version命令,然后按Enter键,如图1-17所示。

图1-17 运行java-version命令(7)如果这时可以看到如图1-17所示Java版本的相关信息,即表明JDK的安装和配置已经成功。下面可以开始安装Android Studio了。

1.2.5 安装Android Studio

与ADT的发展类似,Google为了简化搭建开发环境的过程,已经将使用Android Studio进行开发时所有需要用到的工具都集成好了,到Android的官网就可以下载最新的开发工具,下载网址为https://developer.android.com/studio/index.html。不过,在国内访问Google并不便利,因此推荐大家到http://www.android-studio.org或者http://www.androiddevtools.cn去下载。

上面两个国内的下载地址中,前面一个只提供了最新版本的Android Studio开发工具的下载,相较而言,第二个网址提供了更为丰富的相关下载内容,包括若干Android Studio历史版本的下载及Android SDK各个版本的下载等。接下来,我们就以第二个网址为例,具体介绍Android Studio的下载、安装和配置过程。

1.Android Studio的下载

在浏览器中输入http://www.androiddevtools.cn,打开如图1-18所示的AndroidDevTools主页。

图1-18 AndroidDevTools主页

接下来,将页面滚动至Android Studio一栏,可以看到网站当前提供的所有Android Studio历史版本的列表,如图1-19所示。然后根据实际的需要和开发环境所安装的操作系统选择合适的版本进行下载即可。需要注意的是,下载时推荐选择集成了SDK的链接,省去了后续再使用SDK管理工具下载的麻烦。

图1-19 可供下载的Android Studio版本列表

2.Android Studio的安装

成功下载安装包之后,下一步可以开始Android Studio的安装了。双击安装文件,进入Welcometo Android Studio Setup界面,如图1-20所示。

单击Next按钮打开如图1-21所示的组件选择界面。其中,有三个组件可供选择,第一项Android Studio为必选项,其他两项分别为Android SDK和Android Virtual Device选项,这里建议全部勾选。

继续单击Next按钮,进入License Agreement界面,如图1-22所示。

单击I Agree按钮后打开Configuration Settings对话框,如图1-23所示。这里需要分别选择Android Studio和Android SDK的安装目录,系统默认为C盘,建议安装到磁盘可用空间比较富裕的盘符下。

图1-20 Welcome to Android Studio Setup界面

图1-21 Choose Components界面

图1-22 License Agreement界面

图1-23 Configuration Settings对话框

注意:

随着使用时间的推移,Android Studio安装目录所占存储空间将会持续增大,原因在于运行过程中会生成大量的缓存数据,此外,实际开发过程中可能还需要下载其他SDK版本,鉴于以上两点,选择安装目录时应该保证充裕的磁盘空间可供扩展使用。

选择好安装目录后,单击Next按钮进入Choose Start Menu Folder界面,在此设置“开始”菜单文件夹的名称,如图1-24所示。

这里的名称一般无须修改,直接单击Install按钮开始执行安装任务,如图1-25所示。

Android Studio的安装过程中不需要执行任何操作,待安装任务完成后,将显示Installation Complete界面,如图1-26所示。

单击Next按钮进入Completing Android Studio Setup界面,如图1-27所示。至此,Android Studio的安装已经大功告成了。

3.Android Studio的配置

相信各位读者看到如图1-27所示的完成安装界面后,已经迫不及待地想第一时间运行Android Studio来一睹它的庐山真面目了。但这里奉劝各位先不要着急,第一次启动Android Studio之前,强烈建议大家首先做如下的配置操作。打开Android Studio的安装目录,找到bin目录下的idea.properties文件,如图1-28所示。

图1-24 “开始”菜单文件夹名称设置界面

图1-25 开始安装界面

图1-26 Installation Complete界面

图1-27 Completing Android Studio Setup界面

试读结束[说明:试读内容隐藏了图片]

下载完整电子书

若在网站上没有找合适的书籍,可联系网站客服获取,各类电子版图书资料皆有。

客服微信:xzh432

登入/注册
卧槽~你还有脸回来
没有账号? 忘记密码?