《Android开发课堂实录》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:董志鹏,张水波著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:7302411298
  • 页数:496 页
图书介绍:本书从Android 4.0的基本知识讲起,通过实例逐步讲解Android开发的大部分场景。内容涵盖了Android基础介绍、环境搭建、程序布局设计、使用用户界面组件、处理内部消息、进程间通信和Intent对象等核心技术。接下来讲解Android的常用开发技巧,像多媒体、网络通信、数据库以及电池等等。最后的实例篇精选了游行的游戏应用以及综合性的无线订餐系统。

第1课 全面认识Android 2

1.1 手机操作系统 2

1.1.1 主流手机操作系统 2

1.1.2 Android手机操作系统 3

1.2 Android概述 4

1.2.1 Android发展历史 4

1.2.2 Android版本命名 5

1.2.3 Android特性 7

1.2.4 开放手机联盟 8

1.3 Android系统架构 8

1.3.1 应用程序 8

1.3.2 应用程序框架 9

1.3.3 核心库 10

1.3.4 Android运行时 10

1.3.5 Linux内核 10

1.4 搭建Android开发环境 11

1.4.1 安装JDK 11

1.4.2 配置环境变量 12

1.4.3 安装ADT 14

1.4.4 安装Android SDK 16

1.5 模拟器 17

1.5.1 模拟器简介 17

1.5.2 创建模拟器 18

1.5.3 启动模拟器 19

1.5.4 控制模拟器 20

1.6 实例应用:熟悉Android系统 21

1.6.1 实例目标 21

1.6.2 技术分析 21

1.6.3 实现步骤 21

1.7 拓展训练 23

1.8 课后练习 24

第2课 创建第一个Android程序 28

2.1 创建一个问候程序 28

2.1.1 创建项目 28

2.1.2 项目目录结构 31

2.1.3 AndroidManifest.xml文件结构 35

2.2 设计程序界面 36

2.2.1 使用XML标记设计 36

2.2.2 使用代码设计 39

2.2.3 使用混合方式设计 40

2.3 编写代码 40

2.4 运行程序 41

2.5 调试程序 42

2.5.1 设置断点 42

2.5.2 DDMS 43

2.5.3 手动方式 45

2.6 签名程序 46

2.6.1 使用命令行 46

2.6.2 使用ADT工具 47

2.7 Android应用程序生命周期 48

2.8 Android核心组件简介 49

2.8.1 Activity简介 49

2.8.2 BroadcastReceiver简介 50

2.8.3 ContentProvider简介 51

2.8.4 Service简介 51

2.8.5 Intent简介 52

2.8.6 IntentFilter简介 53

2.9 实例应用:实现用户登录功能 54

2.9.1 实例目标 54

2.9.2 技术分析 54

2.9.3 实现步骤 54

2.10 拓展训练 58

2.11 课后练习 58

第3课 Android工具集 62

3.1 ADB工具 62

3.1.1 配置ADB工具 62

3.1.2 查看设备信息 62

3.1.3 管理软件 63

3.1.4 执行Shell命令 64

3.1.5 移动文件 65

3.1.6 查看bug报告 66

3.1.7 转发端口 66

3.1.8 启动和关闭ADB服务 67

3.2 Android工具 67

3.2.1 查看Android版本的ID信息 68

3.2.2 创建AVD设备 68

3.2.3 删除AVD设备 69

3.3 emulator工具 70

3.3.1 参数详解 70

3.3.2 使用模拟器控制台 73

3.4 mksdcard工具 74

3.5 拓展训练 75

3.6 课后练习 75

第4课 定义应用程序布局 78

4.1 View类简介 78

4.2 线性布局 78

4.2.1 垂直线性布局 79

4.2.2 水平线性布局 80

4.3 相对布局 82

4.4 表格布局 84

4.5 帧布局 87

4.6 绝对布局 88

4.7 网格布局 91

4.7.1 网格布局简介 91

4.7.2 网格布局的使用 93

4.8 实例应用:创建计算器 97

4.8.1 实例目标 97

4.8.2 技术分析 97

4.8.3 实现步骤 98

4.9 扩展训练 100

4.10 课后练习 100

第5课 Android基础控件详解 104

5.1 文本框与编辑框 104

5.11 文本框 104

5.1.2 编辑框 107

5.2 按钮 111

5.2.1 普通按钮 111

5.2.2 图片按钮 112

5.3 单选按钮与复选框 115

5.3.1 单选按钮 115

5.3.2 复选框 116

5.4 列表选择框 120

5.5 列表视图 123

5.5.1 使用ListView控件创建列表视图 123

5.5.2 Activity继承ListActivity实现列表视图 125

5.6 图像视图 126

5.7 日期与时间选择器 128

5.7.1 日期选择器 128

5.7.2 时间选择器 129

5.8 计时器 131

5.9 实例应用:设计用户注册界面 133

5.9.1 实例目标 133

5.9.2 技术分析 134

5.9.3 实现步骤 134

5.10 扩展训练 137

5.11 课后练习 138

第6课 Android高级界面设计 140

6.1 自动完成文本框 140

6.2 进度条 141

6.3 拖动条与星级评分条 145

6.3.1 拖动条 145

6.3.2 星级评分条 148

6.4 选项卡 150

6.5 图像切换器 151

6.6 滚动视图 154

6.7 网格视图 155

6.8 画廊视图 158

6.9 实例应用:幻灯片式图片浏览器 161

6.9.1 实例目标 161

6.9.2 技术分析 161

6.9.3 实现步骤 161

6.10 扩展训练 164

6.11 课后练习 164

第7课 程序菜单与对话框 166

7.1 菜单使用 166

7.1.1 菜单类Menu 166

7.1.2 选项菜单 167

7.1.3 子菜单 169

7.1.4 上下文菜单 171

7.2 使用对话框 172

7.2.1 对话框简介 173

7.2.2 普通对话框 173

7.2.3 列表对话框 175

7.2.4 单选按钮对话框 177

7.2.5 复选框对话框 180

7.2.6 进度对话框 182

7.2.7 日期及时间选择对话框 185

7.3 消息提示 190

7.3.1 Toast的使用 190

7.3.2 Notification 195

7.4 扩展训练 198

7.5 课后练习 198

第8课 Android事件处理机制 202

8.1 Android事件处理概述 202

8.1.1 基于回调机制的事件处理 202

8.1.2 基于监听接口的事件处理 202

8.2 处理键盘事件 203

8.2.1 物理按键简介 203

8.2.2 基于回调机制的按键事件处理 204

8.2.3 基于监听接口的按键事件处理 206

8.3 处理触摸事件 207

8.3.1 基于回调机制的触摸事件处理 208

8.3.2 基于监听接口的触摸事件处理 209

8.4 手势的创建与识别 210

8.4.1 手势的创建 210

8.4.2 手势的导出 211

8.4.3 手势的识别 211

8.5 实例应用:实现一个简单的计算器 214

8.5.1 实例目标 214

8.5.2 技术分析 214

8.5.3 实现步骤 214

8.6 扩展训练 218

8.7 课后练习 218

第9课 应用程序之间的通信 222

9.1 Activity的概述 222

9.1.1 Activity的状态及状态间的转换 222

9.1.2 Activity栈 223

9.1.3 Activity生命周期 223

9.2 使用Activity 224

9.2.1 创建Activity 224

9.2.2 配置Activity 225

9.2.3 启动和关闭Activity 225

9.3 多个Activity交换数据 226

9.3.1 使用Bundle在Activity之间交换数据 226

9.3.2 调用另一个Activity 229

9.4 使用Fragment 231

9.4.1 创建Fragment 232

9.4.2 在Activity中添加Fragment 232

9.5 Intent对象成员 233

9.5.1 组件名称 234

9.5.2 动作 234

9.5.3 数据 235

9.5.4 种类 236

9.5.5 额外 236

9.5.6 标记 237

9.6 Intent的使用 237

9.6.1 在Activity之间使用Intent传递信息 237

9.6.2 Intent过滤器 240

9.6.3 使用Intent发送广播消息 243

9.7 实例应用:自我介绍 245

9.7.1 实例目标 245

9.7.2 技术分析 245

9.7.3 实现步骤 245

9.8 扩展训练 253

9.9 课后练习 254

第10课 数据存储解决方案 258

10.1 简单存储 258

10.1.1 使用Shared Preferences存取数据 258

10.1.2 数据的存储位置和格式 262

10.1.3 存取复杂类型的数据 263

10.2 文件存储 266

10.2.1 内部存储 266

10.2.2 外部存储 269

10.3 数据共享 282

10.3.1 Content Provider概述 282

10.3.2 预定义Content Provider 284

10.3.3 自定义Content Provider 288

10.4 实例应用:使用电话号码查询联系人信息 294

10.4.1 实例目标 294

10.4.2 技术分析 295

10.4.3 实现步骤 295

10.5 扩展训练 298

10.6 课后练习 298

第11课 SQLite数据库存储 302

11.1 SQLite数据库简介 302

11.2 手动建库 302

11.3 SQLite数据库管理工具 305

11.4 在Android中使用SQLite数据库 307

11.4.1 SQLite的简单应用 307

11.4.2 SQLite中的数据绑定 312

11.4.3 持久化数据库引擎(db4o) 319

11.5 将数据库与应用程序一起发布 323

11.6 实例应用:实现一个简单的英文词典 324

11.6.1 实例目标 324

11.6.2 技术分析 324

11.6.3 实现步骤 324

11.7 拓展训练 328

11.8 课后练习 328

第12课 访问系统资源和国际化 332

12.1 资源简介 332

12.1.1 资源的分类 332

12.1.2 引用资源 332

12.2 使用资源 334

12.2.1 字符串资源 334

12.2.2 颜色资源 336

12.2.3 XML资源 337

12.2.4 菜单资源 338

12.2.5 尺寸资源 340

12.2.6 布局资源 342

12.2.7 drawable资源 343

12.2.8 基础类型资源 345

12.3 国际化 346

12.4 拓展训练 348

12.5 课后练习 348

第13课 调用Android系统服务 352

13.1 Service简介 352

13.1.1 Service的分类 352

13.1.2 Service类的重要方法 352

13.1.3 Service的声明 353

13.1.4 Service生命周期 354

13.2 Service操作 357

13.2.1 创建Started Service 357

13.2.2 创建Bound Service 359

13.3 系统Service 366

13.3.1 获得系统服务 366

13.3.2 电话管理器TelephonyManager 366

13.3.3 短信管理器SmsManager 368

13.3.4 音频管理器AudioManager 370

13.3.5 闹钟管理器AIarmManage 371

13.4 广播接收者BroadcastReceiver 375

13.5 实例应用:实现一个简单的多次定时提醒功能 378

13.5.1 实例目标 378

13.5.2 技术分析 379

13.5.3 实现步骤 379

13.6 拓展训练 382

13.7 课后练习 382

第14课 多媒体 386

14.1 多媒体开发详解 386

14.1.1 Open Core 386

14.1.2 MediaPlayer 387

14.1.3 MediaRecorder 388

14.2 使用MediaPlayer播放MP3 390

14.3 视频处理 392

14.3.1 使用ViedoView播放视频 392

14.3.2 使用SurfaceView播放视频 395

14.4 实例应用:创建音乐播放器 396

14.4.1 实例目标 396

14.4.2 技术分析 397

14.4.3 实现步骤 397

14.5 扩展训练 404

14.6 课后练习 404

第15课 图形图像处理技术 408

15.1 常用绘图类的介绍 408

15.1.1 Paint与Color类 408

15.1.2 Canvas类 408

15.1.3 Bitmap类 409

15.1.4 BitmapFactory类 409

15.2 绘制2D图像 410

15.2.1 绘制几何图形 410

15.2.2 绘制文本(字符串) 413

15.2.3 绘制路径 415

15.2.4 绘制图片(图像) 417

15.3 图形特效 419

15.3.1 图像旋转 419

15.3.2 图像缩放 420

15.3.3 图像倾斜 421

15.3.4 图像平移 423

15.3.5 图像像素的操作(半透明) 424

15.3.6 Shader类的操作 425

15.4 拓展训练 427

15.5 课后练习 427

第16课 网络编程 430

16.1 Android网络接口 430

16.1.1 Java标准接口 430

16.1.2 Apache接口 431

16.1.3 Android网络接口 431

16.2 HTTP网络编程 432

16.2.1 使用HttpURLConnection 432

16.2.2 使用HttpCIient 440

16.3 Socket网络编程 444

16.3.1 Socket编程基础 444

16.3.2 Socket应用 446

16.4 Web网络编程 449

16.4.1 浏览网页 449

16.4.2 与JavaScript共享数据 452

16.5 网络编程时的乱码解决方案 454

16.6 拓展训练 456

16.7 课后练习 456

第17课 综合案例 460

17.1 公交查询系统 460

17.1.1 功能简介 460

17.1.2 数据库的设计 460

17.1.3 主界面 461

17.1.4 站点查询 463

17.1.5 线路查询 468

17.1.6 换乘查询 474

17.1.7 公共类 479

17.2 打地鼠小游戏 482

17.2.1 功能简介 482

17.2.2 主界面 483

17.2.3 简单模式 485

17.2.4 困难模式 489

17.2.5 帮助和退出 492