《Android应用开发实践教程》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:韩冬主编;魏慧,胡沁涵副主编;贾俊铖,张建参编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2016
  • ISBN:9787121276804
  • 页数:411 页
图书介绍:本书为卓越工程师培养创新教材,分为两个部分:第一部分 Android客户端程序设计;第二部分 服务器端程序设计。前9章(除第4章外),是Android基础篇。其他章都是特色篇。

第一部分 基础篇 2

第1章 开发环境搭建和程序开发基础 2

1.1 Android简介 2

1.1.1 Android传奇 2

1.1.2 Android体系结构 3

1.2 搭建Android应用开发环境 4

1.2.1 Android4.4安装 4

1.2.2 如何解决Android SDK无法下载Package的问题 6

1.3 第一个Android程序 7

1.4 Android程序结构 8

1.5 Android应用的基本组件介绍 9

1.6 Activity的生命周期 10

1.7 程序调试 12

1.8 Android Studio 1.2正式版安装与配置 13

1.8.1 Windows 7 64位系统安装JDK并配置环境变量 13

1.8.2 Android Studio环境搭建 14

1.8.3 创建HelloWorld项目 19

1.9 相关阅读材料 23

1.9.1 未来的夏娃 23

1.9.2 Andy Rubin的黯然离场:他为何非走不可? 23

1.9.3 Andy Rubin早年岁月 24

1.10 本章小结 25

习题1 26

第2章 用户界面设计 27

2.1 用户界面基础 27

2.2 常用控件 31

2.2.1 TextView和EditText 32

2.2.2 Button与ImageButton 33

2.2.3 单选按钮RadioButton和复选按钮CheckBox 33

2.2.4 ImageView 33

2.2.5 ProgressBar 34

2.2.6 ScrollView 36

2.2.7 ListView 37

2.2.8 GridView 42

2.2.9 AlertDialog 42

2.3 界面布局 43

2.3.1 线性布局及android:layout_weight属性设置 43

2.3.2 帧布局 45

2.3.3 表格布局 45

2.3.4 相对布局 46

2.3.5 绝对布局 47

2.3.6 网格布局 48

2.4 消息提示 48

2.5 Handler消息传递机制 49

2.6 项目实战—“3G商城”(一) 52

2.6.1 任务说明 52

2.6.2 项目讲解 52

2.6.3 典型代码及技术实现 53

2.7 相关阅读材料:Android用户界面中单位的使用 59

2.8 本章小结 60

习题2 60

第3章 组件通信 61

3 1 Activity 61

3.1.1 Activity配置 61

3.1.2 启动和关闭Activity 62

3.1.3 使用Bundle在Activity之间交换数据 62

3.1.4 调用另一个Activity并返回结果 63

3.2 Intent对象 64

3.3 发送并返回短信内容举例 67

3.4 本章小结 68

习题3 68

第4章 后台服务与广播消息 69

4.1 Service应用 69

4.1.1 简介 69

4.1.2 进程内服务 69

4.1.3 跨进程服务 74

4.2 接收广播消息 77

4.2.1 简介 77

4.2.2 发送广播 79

4.2.3 有序广播 82

4.2.4 接收系统广播消息 83

4.3 相关阅读材料:Android开源库EventBus 83

4.4 本章小结 89

习题4 91

第5章 数据存储与访问 92

5.1 使用SharedPreferences 92

5.1.1 简介 92

5.1.2 SharePreferences举例 94

5.2 文件存储 94

5.2.1 简介 94

5.2.2 读写SD卡上的文件 95

5.2.3 文件存储举例 96

5.3 SQLite数据库 96

5.3.1 简介 96

5.3.2 手动创建SQLite 数据库 96

5.3.3 SQLiteDatabase 98

5.4 数据共享 101

5.4.1 ContentProvider 101

5.4.2 创建数据提供者 102

5.4.3 使用数据提供者 103

5.4.4 ContentProvider举例 103

5.5 项目实战——课程表 104

5.5.1 任务说明 104

5.5.2 项目讲解 105

5.5.3 典型代码及技术要点 106

5.6 本章小结 109

习题5 109

第6章 Android网络应用 110

6.1 HTTP通信 110

6.2 Socket通信 115

6.3 使用WebView显示网页 119

6.4 项目实战——查询员工信息 123

6.4.1 任务说明 123

6.4.2 项目讲解 123

6.4.3 典型代码及技术要点 124

6.5 本章小结 126

习题6 127

第7章 图形图像处理 128

7.1 基本绘图 128

7.1.1 准备画布(Canvas) 128

7.1.2 准备画笔(Paint) 129

7.1.3 位图处理(Bitmap和BitmapFactory) 129

7.2 2D绘图 130

7.2.1 几何图形 130

7.2.2 文本 132

7.2.3 路径 133

7.2.4 图片 133

7.3 图形特效处理 134

7.3.1 平移、旋转、缩放、倾斜 134

7.3.2 扭曲 136

7.3.3 位图着色器 137

7.4 综合练习 138

7.4.1 任务说明 138

7.4.2 代码实现 138

7.5 本章小结 140

习题7 140

第8章 Fragment 141

8.1 Fragment概述 141

8.2 Fragment的生命周期 141

8.3 Fragment使用 142

8.4 将Fragment加入Activity中 143

8.5 使用Fragment举例 144

8.6 本章小结 146

习题8 147

第9章 Java并发编程 148

9.1 Java线程池简介 148

9.2 Executor与 ExecutorService 149

9.3 ThreadPoolExecutor 153

9.4 Future模式 157

9.5 项目实战——“3G商城”(二) 161

9.5.1 任务说明 161

9.5.2 项目讲解 161

9.5.3 典型代码及技术要点 163

9.6 本章小结 173

习题9 173

第二部分 提高篇 176

第10章 百度地图开发 176

10.1 Android地图SDK 176

10.1.1 概述 176

10.1.2 申请密钥 176

10.1.3 SimpleMapDemo 180

10.1.4 基础地图 183

10.1.5 事件监听 183

10.2 Android定位SDK 187

10.3 Android导航SDK 187

10.4 项目实战——“开发百度地图” 187

10.4.1 任务说明 187

10.4.2 项目讲解 187

10.4.3 典型代码及技术要点 190

10.5 本章小结 196

习题10 196

第11章 ViewPager和PageAdapter 198

11.1 ViewPager和PageAdapter 198

11.2 FragmentPageAdapter实现仿QQ界面 200

11.3 仿网易新闻客户端Tab标签实现 205

11.4 本章小结 208

习题11 208

第12章 PostgreSQL 9 209

12.1 PostgreSQL简介 209

12.2 PostgreSQL9的安装与配置 209

12.2.1 安装 209

12.2.2 使用pgAdmin Ⅲ连接PostgreSQL 209

12.3 数据库的基本操作 210

12.3.1 创建数据库 210

12.3.2 修改数据库 211

12.3.3 删除数据库 211

12.4 数据表的基本操作 211

12.4.1 创建数据表 211

12.4.2 修改数据表 212

12.4.3 删除数据表 212

12.5 插入、更新与删除数据 212

12.5.1 插入 212

12.5.2 更新 213

12.5.3 删除 214

12.6 数据查询 214

12.6.1 查询语句 214

12.6.2 单表查询 215

12.6.3 集合函数查询 217

12.6.4 连接查询 218

12.6.5 子查询 219

12.6.6 正则表达式查询 220

12.6.7 别名 221

12.7 综合练习 221

12.7.1 任务说明 221

12.7.2 具体实现 221

12.8 相关阅读材料:数据备份与还原 224

12.9 本章小结 225

习题12 225

第三部分 开发篇 228

第13章 在手机客户端解析JSON 228

13.1 JSON简介 228

13.2 服务器端生成JSON数据 228

13.3 在手机客户端解析JSON 231

13.4 项目实战——“3G商城”(三) 233

13.4.1 任务说明 233

13.4.2 项目讲解 233

13.4.3 典型代码及技术要点 235

13.5 本章小结 239

习题13 239

第14章 消息推送 240

14.1 Android消息推送机制 240

14.1.1 推送方式基础 240

14.1.2 消息推送实现原理 240

14.2 Android平台的消息推送实现 241

14.2.1 Push在Android平台上长连接的实现 241

14.2.2 使用Androidpn实现消息推送 242

14.3 项目实战——“Android客户端实现推送” 246

14.3.1 任务说明 246

14.3.2 项目讲解 246

14.3.3 典型代码及技术要点 249

14.4 相关阅读材料 262

14.4.1 几种常见的消息推送解决方案 262

14.4.2 Androidpn所存在的一些问题 263

14.5 本章小结 264

习题14 264

第15章 Android账户管理 265

15.1 账户管理相关类 265

15.2 使用OAuth 2.0来进行鉴定 267

15.3 应用程序如何将一个账号注册到系统中 270

15.4 创建自定义账户示例 273

15.5 本章小结 275

习题15 275

第16章 MyBatis框架原理 276

16.1 MyBatis框架简介 276

16.2 从JDBC到MyBatis 277

16.3 使用MyBatis进行一次简单的SQL查询 278

16.3.1 准备工作 278

16.3.2 主要步骤 279

16.3.3 小结 282

16.4 配置文件说明 282

16.4.1 主配置文件 282

16.4.2 接口文件 285

16.4.3 SQL映射文件 286

16.4.4 动态SQL 288

16.5 MyBatis应用 290

16.5.1 数据的增、删、改、查 290

16.5.2 关联数据的查询 292

16.5.3 分页数据的查询 295

16.5.4 与Spring3集成 296

16.5.5 与Spring MVC集成 299

16.6 本章小结 301

习题16 301

第17章 Maven和Gradle 303

17.1 初识Maven 303

17.2 Maven的安装和配置 305

17.3 Maven使用 308

17.4 坐标和依赖 310

17.5 构建支持Servlet 3.0的Maven Web应用 311

17.6 Gradle来了 314

17.7 本章小结 315

习题17 316

第18章 服务器端接口编程 317

18.1 JNDI数据源配置 317

18.2 Log4J与SLF4J 320

18.3 项目实战——“3G商城”(四) 324

18.3.1 任务说明 324

18.3.2 项目讲解 324

18.3.3 典型代码及技术要点 325

18.4 MyBatis VS Hibernate 329

18.5 相关阅读材料:Flexjson 334

18.6 本章小结 335

习题18 335

第四部分 拓展篇 338

第19章 即时通信 338

19.1 XMPP协议 338

19.2 openfire 341

19.2.1 openfire简介 341

19.2.2 openfire安装与配置 341

19.3 Smack简介 343

19.4 项目实战——“实现即时通信” 347

19.4.1 登录openfire服务器 347

19.4.2 获取好友列表 350

19.4.3 客户端接收服务器发送的消息 352

19.4.4 初步实现两个客户端通信 354

19.5 相关阅读材料 359

19.5.1 将openfire源代码导入 Eclipse 359

19.5.2 openfire插件开发 364

19.6 本章小结 367

习题19 367

第20章 友盟统计及社会化组件 368

20.1 友盟应用统计分析 368

20.1.1 集成准备 368

20.1.2 友盟统计分析示例 368

20.2 友盟社会化分享组件 372

20.3 本章小结 373

习题20 373

第21章 Android客户端程序架构 374

21.1 概述 374

21.2 项目实战——“掌上苏大” 374

21.2.1 任务说明 375

21.2.2 整体框架和运行主界面 375

21.2.3 Android全局对象Application 376

21.2.4 整个应用的线程终止异常处理 377

21.2.5 程序执行主要流程 378

21.2.6 推送的实现 381

21.2.7 整个应用的后台服务和广播接收机制 382

21.2.8 使用友盟第三方平台对用户行为进行分析 384

21.2.9 Android系统账户实现 385

21.2.10 其他 385

21.3 本章小结 385

习题21 385

第22章 Java设计模式 386

22.1 设计模式(Design Pattern)的分类和设计原则 386

22.1.1 设计模式的分类 386

22.1.2 设计原则 386

22.2 创建模式(Creational Pattern) 387

22.2.1 工厂方法模式(Factory Method)和抽象工厂模式(Abstract Factory) 387

22.2.2 单例模式(Singleton) 388

22.2.3 建造者模式(Builder) 388

22.2.4 原型模式(Prototype) 388

22.3 结构模式(Structural Pattern) 389

22.3.1 适配器模式(Adapter)和装饰模式(Decorator) 389

22.3.2 代理模式(Proxy)和外观模式(Facade) 390

22.3.3 桥接模式(Bridge)和组合模式(Composite) 390

22.3.4 享元模式(Flyweight) 391

22.4 行为模式(Behavioral Pattern) 391

22.4.1 策略模式(Strategy)和模板方法模式(Template Method) 391

22.4.2 观察者模式(Observer)、迭代器模式(Iterator)、责任链模式(Chain of Responsibility)和命令模式(Command) 392

22.4.3 备忘录模式(Memento)和状态模式(State) 392

22.4.4 访问者模式(Visitor)、中介者模式(Mediator)和解释器模式(Interpreter) 393

22.5 本章小结 394

习题22 394

第23章 版本控制工具——SVN和Git 396

23.1 版本控制基础知识 396

23.2 SVN 396

23.2.1 SVN服务端 396

23.2.2 SVN客户端 397

23.2.3 Android Studio中使用SVN 398

23.3 Git和GitHub 398

23.3.1 Git安装 398

23.3.2 远程仓库 399

23.3.3 分支管理 400

23.3.4 使用GitHub 401

23.3.5 Android Studio中使用Git 401

23.4 比较SVN和Git 401

23.5 本章小结 402

习题23 402

附录A Eclipse中编码问题(包括ADT) 403

附录B Eclipse自动部署项目到Tomcat的webapps目录 405

附录C ADB命令 408

参考文献 409