《Android开源项目开发技术与案例教程》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:师文轩,郝天舒,郭艺璇编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111517054
  • 页数:334 页
图书介绍:本书内容可以作为一门专业选修课程,主要培养学生对Android平台和工具的了解,以及应用相关Android项目开发、部署、运行适合于智能移动应用开发的能力。本教材强调实践,必须通过项目实战环节锻炼才能加深对本课程相关知识的理解和掌握。实验部分结合课程教学,通过Android平台过程实践,使学生掌握Android平台技术、工具和开源项目的应用。本书最后以一个贯穿各部分知识点的案例为总结,将各章节知识点穿插到该案例的相关部分的实现过程中来讲授,让读者对各章节的知识能够融会贯通。

第1章 Android概述 1

1.1 Android介绍 1

1.1.1 Android简介 1

1.1.2 Android的系统架构 2

1.2 Android版本发展历程 3

1.3 开发环境快速搭建 7

1.3.1 安装JDK 7

1.3.2 安装ADT-Bundle for Windows 9

1.3.3 创建一个Hello World项目 10

1.4 Android开源项目 12

小结 17

习题 17

第2章 Java语言基础 18

2.1 Java概述及环境配置 18

2.2 Java编译与运行 20

2.3 Java基本语法 21

2.3.1 基本元素和数据类型 21

2.3.2 运算符和表达式 23

2.3.3 类型转换和函数 25

2.3.4 特殊关键字和抽象类 26

2.3.5 接口和包 28

2.3.6 异常与处理 30

2.4 Java中的数组 31

2.4.1 一维数组 31

2.4.2 二维数组 32

2.5 Java中的几种控制结构语句 32

2.6 JDK5之后Java的新特性 34

2.6.1 泛型 34

2.6.2 for-each循环 36

2.6.3 自动装箱/拆箱 38

2.6.4 枚举 38

2.6.5 可变参数 39

2.6.6 静态导入 40

2.6.7 协变返回 41

2.6.8 类型强制转换 41

2.7 Java中的多线程 42

2.7.1 进程和线程 42

2.7.2 线程的同步 44

2.7.3 线程的阻塞 46

2.8 Java输入/输出流 49

2.8.1 标准输入/输出流 49

2.8.2 字节输出流 51

2.8.3 字节输入流 51

2.8.4 文件输入流 52

2.8.5 文件输出流 53

小结 54

习题 55

第3章 Android开发基础 56

3.1 Android的资源 56

3.1.1 创建资源 56

3.1.2 使用资源 56

3.2 Android应用程序的四大组件 59

3.2.1 Activity 59

3.2.2 Broadcast Receiver 76

3.2.3 Service 79

3.2.4 Content provider 82

3.3 Android的Intent类 83

3.3.1 Intent类简介 83

3.3.2 Intent对象对Activity类的应用 83

3.3.3 Intent对象对Service类的应用 83

3.3.4 Intent对象对Broadcast Receiver类的应用 84

3.3.5 Intent的使用 84

3.4 Material Design(应用程序设计规范) 85

3.4.1 Material Design设计规范简介 85

3.4.2 Material Design设计规范详解 86

3.5 Android开发基础实例——多Activity交互程序 113

3.5.1 建立Android项目 113

3.5.2 多Activity交互程序构架 113

3.5.3 多Activity交互实现 113

小结 115

习题 115

第4章 Android界面编程 117

4.1 AndroidManifest.xml文件 117

4.2 Android项目的布局 117

4.2.1 Android的五大布局 117

4.2.2 FrameLayout(框架布局) 118

4.2.3 LinearLayout(线性布局) 119

4.2.4 RelativeLayout(相对布局) 119

4.2.5 TableLayout(表格布局) 121

4.2.6 AbsoluteLayout(绝对布局) 122

4.2.7 布局高级技术 122

4.3 Android的View类 127

4.3.1 ImageView(图片视图) 127

4.3.2 TextView(文本视图) 128

4.3.3 EditText(编辑视图) 128

4.3.4 Button(按钮) 129

4.3.5 ImageButton(图片按钮) 131

4.3.6 ListView(列表视图) 131

4.3.7 GridView(格式视图) 131

4.3.8 ProgressBar(进度栏) 132

4.3.9 Spinner(下拉列表) 132

4.4 Menu(菜单) 133

4.4.1 创建选项菜单 133

4.4.2 动态设置菜单 136

4.4.3 上下文菜单 136

4.5 WebView(网页视图) 138

4.6 AngularJS(前端JS开发框架) 139

4.6.1 AngularJS语言简介 139

4.6.2 AngularJS语言入门 140

4.6.3 AngularJS语言进阶 144

4.7 Android界面编程实例——个人空间 150

4.7.1 程序界面构成 150

4.7.2 登录和注册界面 150

4.7.3 主界面开发 155

4.7.4 实例小结 157

小结 158

习题 158

第5章 Android数据存储与交互 160

5.1 SQLite数据库 160

5.1.1 创建数据库 160

5.1.2 创建表和索引 161

5.1.3 添加数据 162

5.1.4 查询数据库 162

5.2 Preferences数据存储 163

5.3 文件存储 164

5.4 Content provider数据共享 165

5.4.1 Content provider基础 165

5.4.2 Content provider数据模型 165

5.4.3 创建Content provider 166

5.4.4 声明Content provider 167

5.4.5 查询Content provider 167

5.5 Android数据存储与交互实例——通讯录 169

5.5.1 数据存储与交互简介 169

5.5.2 布局文件简介 171

5.5.3 数据库文件 173

5.5.4 添加联系人 174

5.5.5 查找联系人 175

5.5.6 联系人的信息类 176

5.5.7 删除联系人 178

5.5.8 实例小结 179

小结 179

习题 180

第6章 Android网络通信 181

6.1 HTTP通信 181

6.1.1 请求网络通信权限 181

6.1.2 检查网络连接 181

6.1.3 通信流程 182

6.2 Socket(套接字)通信 183

6.3 蓝牙通信 184

6.3.1 Android中提供的蓝牙API 185

6.3.2 基本蓝牙功能 185

6.3.3 蓝牙例程BluetoothChat分析 185

6.4 红外通信 187

小结 188

习题 188

第7章 Android多媒体开发 189

7.1 Android中的多媒体简介 189

7.2 MediaPlayer(音频/视频管理) 189

7.2.1 MediaPlayer播放文件 189

7.2.2 MediaPlayer录制文件 190

7.2.3 管理MediaPlayer输出 190

7.3 Camera(摄像头) 191

7.3.1 Taking Photos(拍照操作) 191

7.3.2 Recording Videos(录像操作) 195

7.3.3 Controlling the Camera(控制相机硬件) 196

7.4 语音识别 199

7.5 多媒体实例——语音备忘录 200

7.5.1 语音备忘录简介 200

7.5.2 语音输入控制 201

7.5.3 语音与文字的转换 202

7.5.4 语音备忘录的功能实现 203

7.5.5 实例小结 204

小结 204

习题 204

第8章 Android开源项目开发 205

8.1 ActionBarSherlock(操作栏开源项目) 205

8.1.1 ActionBarSherlock库简介 205

8.1.2 ActionBarSherlock库文件配置 206

8.1.3 ActionBarSherlock库的核心功能 208

8.2 Facebook-Android-SDK脸书开源项目 213

8.2.1 Facebook-SDK项目介绍 213

8.2.2 Facebook-SDK的配置 214

8.2.3 使用Facebook来实现登录注销 217

8.2.4 将应用程序上的内容分享到Facebook上 220

8.2.5 用图谱获取Facebook用户的信息 227

8.2.6 给朋友发送请求 231

8.3 SlidingMenu(滑动菜单开源项目) 234

8.3.1 SlidingMenu库简介 234

8.3.2 SlidingMenu库文件配置 234

8.3.3 SlidingMenu库的核心功能 236

8.4 Google Map(谷歌地图)开发技术 241

8.4.1 Google Map API简介 241

8.4.2 使用Google Map API开发地图应用程序 241

8.5 Google CardBoard谷歌虚拟现实技术 270

8.5.1 Google CardBoard简介 271

8.5.2 手机软件安装 271

8.5.3 开发纸板项目——寻宝 271

小结 276

习题 277

第9章 综合实例1——OpenSudoku数独游戏项目 278

9.1 游戏简介 278

9.1.1 游戏源码下载 278

9.1.2 游戏规则介绍 279

9.2 图形界面编写 280

9.2.1 自定义View类——SudokuBoardView 280

9.2.2 填写数字的布局 284

9.2.3 列表界面 287

9.3 数据库结构 289

9.3.1 插入数据到数据库中 289

9.3.2 数据库操作函数 290

9.4 编写游戏逻辑 292

9.4.1 在九宫格布局中放置数字 292

9.4.2 玩家填入数字 293

9.4.3 定时器 295

9.4.4 对话框 296

9.4.5 导出谜团 297

小结 300

第10章 综合实例2——Faceless社交应用项目 301

10.1 Faceless项目简介 301

10.2 Faceless图形界面 302

10.3 Faceless程序逻辑与通信 305

10.3.1 主界面功能 305

10.3.2 添加消息功能 308

10.3.3 程序设置功能 317

小结 320

附录 习题参考答案 321

参考文献 331