本书共10章,先介绍Android软件的基础知识、组成、布局、控件、菜单与对话框等基本内容,让读者熟悉并掌握Android软件,接着介绍Android图形、动画、存储、手机通信、手机服务、手机多媒体等内容。
丁伟雄、宋晓光、李伟平编著的《Android程序设计与应用》是以Android目前最新的版本4.4.2为平台编写的,书中内容全面、详细,实例丰富、实用性强,书中对每一个知识点都做了介绍,并给出一个相应的实例进行说明,使读者更快、更好地掌握 Android。本书主要是从Android开发最简单的内容开始,逐步深入,最后结合项目的开发进行详细讲解。
本书共10章,先介绍Android软件的基础知识、组成、布局、控件、菜单与对话框等基本内容,让读者熟悉并掌握Android软件,接着介绍Android图形、动画、存储、手机通信、手机服务、手机多媒体等内容,让读者熟练地使用Android进行手机功能的开发。
本书适合不同层次的读者阅读,特别适合程序开发员作为Android开发的参考书。
Android是一个开放式手机和平板电脑的操作系统,目前的发展十分迅猛。虽然Android面世时间不长,但Android已经对传统的手机平台构成了强大的威胁。业界部分人士预测,Android将会成为应用最广泛的手机操作系统。
Android是Google于2007年11月5日发布的基于Linux平台的开源移动操作系统,Google向全世界推广Android的策略是持续的,而且推广的力度很大。随着越来越多硬件厂商的加入,精心设计的程序通过各种接口到达Android终端设备,如手机、平板电脑、手持游戏设备、数字相框、电子书和Google TV电视盒等。
Android作为一个开放、开源的移动终端平台,对于业界来讲,这意味着源代码基于Apache 2.0许可进行开放。Android具有以下五大优势。
(1) 开放性: Android平台的最大优势就是其开放性,开放的平台允许任何移动终端厂商加入到Android联盟中来。显著的开放性可以使其拥有更多的开发者,随着用户和应用的日益增加,一个崭新的平台也将很快走向成熟。
开放性对于Android的发展而言,有利于积累人气,这里的人气包括消费者和厂商,而对于消费者来讲,最大的受益正是丰富的软件资源。开放的平台也会带来更大的竞争,如此一来,消费者将可以用更低的价位购得心仪的手机。
(2) 挣脱运营商的束缚: 在过去很长的一段时间,特别是在欧美地区,手机应用往往受到运营商制约,使用什么功能接入什么网络,几乎都受到运营商的控制。随着EDGE、HSDPA这些2G至3G移动网络的逐步过渡和提升,手机随意接入网络已不是运营商口中的笑谈。
(3) 丰富的硬件选择: 这与Android平台的开放性相关,由于Android的开放性,众多的厂商会推出千奇百怪、功能特色各具的多种产品。功能上的差异和特色,不会影响到数据同步,甚至是软件的兼容。
(4) 不受任何限制的开发商: Android平台提供给第三方开发商一个十分宽泛、自由的环境,不会受到各种条条框框的限制,可想而知,会有多少新颖别致的软件产生。但也有其两面性,血腥、暴力、情色方面的程序和游戏如何控制是留给Android的难题之一。
(5) 无缝结合的Google应用: 在互联网上Google已经有了十几年历史,从搜索巨人到全面的互联网渗透,Google服务(如地图、邮件、搜索等)已经成为连接用户和互联网的重要纽带,而Android平台手机将无缝地结合这些优秀的Google服务。
在Android推出之前,移动开发领域的发展一直处于不温不火的局面,Android的推出为移动互联网开发领域吹进了一股清新的风。它的精巧体系架构以及完全开放的特性也吸引了无数的开发人员。Android作为一个优秀的移动操作平台,其程序开发的学习很难,最大的困难就是相关资源的缺乏。Google提供的主要学习资料就是Android SDK文档。SDK文档对于开发人员了解Android程序设计有很大的帮助,但并没有系统地讲解Android程序设计的相关技术。针对这些问题,作者精心编写了本书。
本书的编写具有以下几大优点。
内容全: 对于刚接触Android的人员,本书首先对Android系统的历史以及架构做了详细的介绍。
实例多: 对于Android系统中的每一个知识点,不管是一个简单的文本框还是复杂的控件,本书都会给出一个相应的实例做说明,这样便于读者对知识点进行理解和掌握。
实用性强: 本书采用Android应用程序常用的知识点,并结合实例讲解,让读者在实际应用中能够快速上手,同时也方便读者对程序进一步扩展。
通俗易懂: 本书条理清晰、文字简洁,每讲解一些基本概念都结合实例进行说明,做到理论与实践相结合,从而让读者快速理解与掌握Android的相关应用。
图文并茂: 针对没有接触过Android的读者,本书对相关概念一般会插入对应的图片做说明,同时对每一个知识点实例的运行效果给出相应的运行效果图,这样对读者掌握这一知识点起到了很大的作用。
应业界需要,作者编写了本书,本书的编写平台是目前Android的最新版本4.4.2。本书共分为10章,其主要内容如下。
第1章: 介绍Android入门知识,主要包括Android概述、Android环境搭建、Android应用项目组成等内容。
第2章: 介绍Android基本组件,主要包括Android生命周期、资源的管理与使用、Activity(活动)、Intent(意图)等内容。
第3章: 介绍Android布局,主要包括UI界面、View 对象、布局管理器等内容。
第4章: 介绍Android基本控件,主要包括文本类控件、按钮类控件、列表类控件等内容。
第5章: 介绍Android菜单与对话框,主要包括Android菜单、Android对话框、Android消息提示框等内容。
第6章: 介绍Android图形与动画,主要包括Android图形、Path绘图、Android动画等内容。
第7章: 介绍Android持久化存储,主要包括文件结构、数据存储方式、Android的各种存储等内容。
第8章: 介绍Android手机通信与服务,主要包括RPC通信、TCP通信、UDP通信以及手机服务等内容。
第9章: 介绍Android手机自动控制服务,主要包括查看手机信息、查看SIM信息、闹钟设置等内容。
第10章: 介绍Android的多媒体功能,主要包括音频播放、录制多媒体、视频播放以及感应器等内容。
本书主要由丁伟雄、宋晓光和李伟平编写,此外参加编写的人员还有刘超、邓俊辉、梁朗星、李旭波、张棣华、刘泳、邓耀隆、何正风和周品。
本书适合不同层次的读者阅读,特别适合程序开发员作为Android开发的参考书。由于作者的水平有限,加之时间仓促,书中难免会存在不足之处,敬请广大读者批评指正。
编者2014年10月
第1章 Android入门知识
1.1 Android概述
1.1.1 Android平台特性
1.1.2 Android平台架构
1.1.3 Android市场
1.1.4 Android应用组件
1.2 Android环境搭建
1.2.1 系统需求
1.2.2 安装JDK
1.2.3 安装Eclipse
1.2.4 安装Android SDK
1.2.5 安装ADT插件
1.2.6 Android虚拟设备
1.2.7 运行AVD
1.3 Android应用项目组成
1.4 第一个Android实例
第2章 Android基本组件
2.1 Android生命周期
2.2 资源的管理与使用
2.2.1 颜色资源
2.2.2 权限控制
2.3 Activity
2.3.1 单个Activity
2.3.2 多个Activity
2.4 Intent
2.4.1 Intent构成与属性
2.4.2 Intent经典实例
2.5 Adapter对象
2.5.1 Adapter绑定
2.5.2 ArrayAdapter与SimpleCursorAdapter
2.6 消息传递机制
第3章 Android布局
3.1 UI界面
3.1.1 布局文件控制UI
3.1.2 代码控制UI
3.1.3 混合控制UI
3.2 View对象
3.2.1 View概述
3.2.2 ViewGroup概述
3.2.3 自定义View
3.2.4 View对象实例
3.3 布局管理器
3.3.1 线性布局
3.3.2 表格布局
3.3.3 帧布局
3.3.4 相对布局
3.4 选项卡
3.5 TabHost容器
3.6 布局应用实例
第4章 Android基本控件
4.1 文本类控件
4.1.1 文本框属性及实例
4.1.2 编辑框属性及实例
4.1.3 自动文本框属性及实例
4.2 按钮类控件
4.2.1 普通按钮概述及实例
4.2.2 图片按钮概述与实例
4.2.3 开关按钮属性及实例
4.2.4 单选按钮/复选框属性及实例
4.3 列表类控件
4.3.1 列表选择框属性及实例
4.3.2 列表视图属性及实例
4.4 图像类控件
4.4.1 图像视图属性及实例
4.4.2 网格视图属性及实例
4.4.3 图像切换器概述及实例
4.4.4 画廊视图属性及实例
4.5 其他控件
4.5.1 滚动视图概述及实例
4.5.2 进度条属性及实例
4.5.3 拖动条概述及实例
4.5.4 星级评分条属性及实例
4.6 时间类控件
4.6.1 日期、时间控件概述及实例
4.6.2 时钟控件概述及实例
4.6.3 计时器概述及实例
4.7 基本控件综合实例
4.7.1 体重器界面
4.7.2 登录界面
4.7.3 人物评分
第5章 Android菜单与对话框
5.1 菜单
5.1.1 菜单选项概述及实例
5.1.2 上下文菜单属性及实例
5.2 点阵图像属性及实例
5.3 对话框
5.3.1 AlertDialog对话框属性及实例
5.3.2 PopupWindow对话框概述及实例
5.3.3 时间、日期对话框属性及实例
5.3.4 进度条对话框属性及实例
5.4 消息提示框
5.4.1 Toast概述及实例
5.4.2 Notification概述及实例
5.5 菜单与对话框综合实例
第6章 Android图形与动画
6.1 Android图形
6.1.1 画笔
6.1.2 画布
6.2 Path绘图
6.3 美化UI控件
6.3.1 使用style
6.3.2 selector状态列表
6.3.3 背景图片selector
6.4 Android动画
6.4.1 补间动画
6.4.2 逐帧动画
6.5 图形与动画综合实例
第7章 Android持久化存储
7.1 文件结构
7.1.1 系统文件
7.1.2 数据文件
7.1.3 外部存储文件
7.2 数据存储方式
7.3 SharedPreferences存储
7.3.1 SharedPreferences存储概述
7.3.2 SharedPreferences存储实例
7.4 文件存储数据
7.4.1 程序私有文件
7.4.2 读/写SD卡文件
7.5 SQLite数据库存储
7.5.1 SQLite数据库存储概述
7.5.2 SQLite数据库开发
7.5.3 SQLite数据库实例
7.6 ContentProvider存储数据
7.6.1 ContentProvider存储分析
7.6.2 ContentProvider存储实例
7.7 NetWork存储数据
第8章 Android手机通信与服务
8.1 RPC通信
8.2 TCP通信
8.2.1 TCP通信概述
8.2.2 TCP通信实例
8.3 UDP通信
8.3.1 UDP通信概述
8.3.2 UDP通信流程
8.3.3 UDP通信实例
8.4 HTTP通信
8.4.1 GET请求
8.4.2 POST请求
8.5 WebView浏览器
8.6 手机通信综合实例
8.7 手机服务
8.7.1 电话拨打功能
8.7.2 自制电话拨号功能
8.7.3 短信功能
8.7.4 接收短信
8.7.5 电子邮件
8.7.6 通讯录搜索
8.7.7 震动功能
8.7.8 WiFi功能
8.7.9 手机桌面设置
8.8 综合实例
第9章 Android手机自动控制服务
9.1 查看手机信息
9.2 查看SIM信息
9.3 闹钟设置
9.4 查看电池剩余量
9.5 接收到短信的提示
9.6 短信防火墙
9.7 语音识别
9.8 计算器的实现
9.9 备忘录的实现
第10章 Android的多媒体功能
10.1 音频播放
10.2 录制多媒体
10.3 视频播放
10.4 摄像头的实现
10.4.1 摄像头的拍照功能
10.4.2 实现摄像头录制
10.5 传感器
10.5.1 GPS位置传感器
10.5.2 传感器介绍
网上参考资源
参考文献