《深入理解Android网络编程 技术详解与最佳实践》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:陈文,郭依正著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2013
  • ISBN:9787111435020
  • 页数:362 页
图书介绍:本书共分为三个部分:第一部分为概述篇,即本书第1章,这部分在简介了Android开发平台后,重点讲解了Android网络程序的功能及开发环境的配置,引领读者走进Android网络编程的大门。第二部分为实战篇,包括本书第2章到第8章,这部分介绍了基本的网络协议TCP、UDP、HTTP等在Android上的应用;讲解了使用Android处理JSON、SOAP、HTML、XML等数据的方法,同时讲解了Android中的RSS编程、Email编程、OAuth认证等;解析了Android中Locations、Maps、USB、Wi—Fi、Bluetooth、NFC等网络模块的编程;讨论了Android中线程、数据存取、消息缓存、界面更新等的处理方法;探讨了SIP、XMPP等协议在Android上的应用。第三部分为源码分析篇,包括本书第9章到第11章,这部分分析了Android中与HTML处理、网络处理以及部分网络应用相关的源码。读者通过阅读这部分内容,可以进一步加深对相关知识点的理解。

第一篇 概述篇 2

第1章Android网络编程概要 2

1.1 Android简介 2

1.1.1 Android的发展 2

1.1.2 Android功能特性 3

1.1.3 Android系统构架 4

1.2 Android网络程序的功能 6

1.2.1通信功能 6

1.2.2及时分享 6

1.2.3个人管理 6

1.2.4娱乐游戏 7

1.2.5企业应用 7

1.3设置Android开发环境 7

1.3.1相关下载 7

1.3.2安装ADT 9

1.3.3 Hello World! 11

1.4网络应用实战案例 17

1.4.1加载一个页面 17

1.4.2下载一个页面 21

1.5小结 21

第二篇 实战篇 24

第2章Android基本网络技术和编程实践 24

2.1计算机网络及其协议 24

2.1.1计算机网络概述 24

2.1.2网络协议概述 25

2.1.3 IP、 TCP和UDP协议 26

2.2在Android中使用TCP、 UDP协议 31

2.2.1 Socket基础 31

2.2.2使用TCP通信 34

2.2.3使用UDP通信 36

2.3 Socket实战案例 39

2.3.1 Socket聊天举例 39

2.3.2 FTP客户端 41

2.3.3 Telnet客户端 44

2.4小结 46

第3章Android基本Web技术和编程实践 47

3.1 HTTP协议 47

3.1.1 HTTP简介 47

3.1.2实战案例:基于HTTP协议的文件上传 51

3.2 Android中的HTTP编程 57

3.2.1 HttpClient和URLConnection 57

3.2.2 Post和Get在HttpClient的使用 58

3.2.3实战案例:使用HttpClient和URLConnection访问维基百科 60

3.3 Android处理JSON 64

3.3.1 JSON简介 64

3.3.2 JSON数据解析 65

3.3.3JSON打包 67

3.3.4实战案例:JSON解析wikipedia内容 68

3.4 Android处理SOAP 71

3.4.1 SOAP简介 71

3.4.2 SOAP消息 72

3.4.3实战案例:SOAP解析天气服务 74

3.5 Android对HTML的处理 79

3.5.1解析HTML 79

3.5.2 HTML适配屏幕 80

3.5.3 JavaScript混合编程 81

3.5.4实战案例:Android自定义打开HTML页面 87

3.6小结 91

第4章Android常见网络接口编程 92

4.1 Android解析和创建XML 92

4.1.1 XML简介 92

4.1.2 DOM解析XML 97

4.1.3 SAX解析XML 102

4.1.4 PULL解析XML 108

4.1.5实战案例:Android中创建XML 110

4.2 Android订阅R S S 113

4.2.1 RSS简介 113

4.2.2实战案例:简单RSS阅读器 115

4.3 Android Email编程 122

4.3.1 Android发送Email 122

4.3.2实战案例: Android下Email的Base64加密 123

4.4 Android网络安全 125

4.4.1 Android网络安全简介 125

4.4.2 Android加密和解密 127

4.4.3实战案例:Android应用添加签名 133

4.5 OAuth认证 135

4.5.1 OAuth简介 135

4.5.2实战案例:使用OAuth接口 137

4.6小结 139

第5章Android网络模块编程 141

5.1 Android地图和定位 141

5.1.1获取map…api密钥 141

5.1.2获取位置 144

5.1.3实战案例:利用MapView显示地图 146

5.2 USB编程 150

5.2.1 USB主从设备 150

5.2.2 USB Accessory Mode 151

5.2.3 USB Host Mode 157

5.2.4实战案例:Android和Arduino交互 159

5.3 Wi-Fi编程 168

5.3.1 Android Wi-Fi相关类 168

5.3.2 Android Wi-Fi基本操作 171

5.3.3实战案例:使用Wi-Fi直连方式传输文件 177

5.4蓝牙编程 185

5.4.1蓝牙简介 185

5.4.2 Android蓝牙API分析 185

5.4.3 Android蓝牙基本操作 187

5.4.4实战案例:蓝牙连接 192

5.5 NFC编程简介 197

5.5.1 NFC技术简介 197

5.5.2 NFC API简介 198

5.5.3 NFC处理流程分析 199

5.6小结 205

第6章Android线程、数据存取、缓存和UI同步 206

6.1 Android线程 206

6.1.1 Android线程模型 206

6.1.2异步任务类 211

6.1.3实战案例:利用AsyncTask实现多线程下载 213

6.2数据存取 214

6.2.1 Shared Preferences数据存储 215

6.2.2 Internal Storage数据存储 216

6.2.3 External Storage数据存储 217

6.2.4 SQLite Databases数据存储 219

6.2.5实战案例:SQLite数据库操作 220

6.3网络判定 227

6.3.1判断用户是否连接 228

6.3.2判断网络连接的类型 228

6.3.3监控网络连接改变 228

6.3.4实战案例:根据广播消息判断网络连接情况 228

6.4消息缓存 230

6.4.1 Android中的缓存机制 230

6.4.2实战案例:下载、缓存和显示图片 231

6.5界面更新 236

6.5.1 刷新数据时的界面更新 236

6.5.2完成任务时的界面更新 237

6.5.3实战案例:自定义列表显示更新 238

6.6小结 248

第7章 基于SIP协议的VoIP应用 249

7.1 SIP协议简介 249

7.2 SIP服务器搭建 250

7.2.1下载安装Brekeke SIP Server 250

7.2.2访问服务器 251

7.2.3启动服务器 252

7.3 SIP程序设置 253

7.3.1 Android SIP API中的类和接口 253

7.3.2 Android极限列表 253

7.3.3完整的Manifest文件 254

7.4 SIP初始化通话 255

7.4.1 SipManager对象 255

7.4.2 SipProfile对象 256

7.5监听SIP通话 257

7.5.1创建监听器 258

7.5.2拨打电话 258

7.5.3接收呼叫 259

7.6实战案例:SIP通话 261

7.7小结 270

第8章 基于XMPP协议的即时通信应用 271

8.1 XMPP协议简介 271

8.2使用Openfire搭建XMPP服务器 272

8.3登录XMPP服务器 276

8.3.1 Asmack相关类 276

8.3.2登录XMPP服务器 277

8.4联系人相关操作 279

8.4.1获取联系人列表 279

8.4.2获取联系人状态 280

8.4.3添加和删除联系人 280

8.4.4监听联系人添加信息 281

8.5消息处理 282

8.5.1接收消息 282

8.5.2发送消息 283

8.6实战案例:XMPP多人聊天 283

8.6.1创建新多人聊天室 284

8.6.2加入聊天室 286

8.6.3发送和接收消息 287

8.7小结 288

第三篇 源码分析篇 290

第9章Android对HTML的处理 290

9.1 Android HTML处理关键类 290

9.2 HTMLViewer分析 292

9.3浏览器源代码解析 296

9.3.1 WebView加载入口分析 296

9.3.2调用JavaScript接口 299

9.4 WebKit简单分析 300

9.4.1 HTTP Cache管理 300

9.4.2 Cookie管理 301

9.4.3处理HTTP认证以及证书 302

9.4.4处理JavaScript的请求 302

9.4.5处理MIME类型 305

9.4.6访问WebView的历史 306

9.4.7保存网站图标 306

9.4.8 WebStorage 306

9.4.9处理UI 307

9.4.10 Web设置分析 309

9.4.11 HTML5音视频处理 309

9.4.12缩放和下载 311

9.4.13插件管理 311

9.5小结 313

第10章Android网络处理分析 314

10.1 Android网络处理关键类及其说明 314

10.2 Android网络处理流程 315

10.2.1监控网络连接状态 315

10.2.2认证类 316

10.2.3 DHCP状态机 317

10.2.4 LocalServerSocket 318

10.2.5响应邮件请求 320

10.2.6提供网络信息 323

10.2.7 Proxy类 324

10.2.8 VPN服务 325

10.3 Android封装的HTTP处理类 326

10.3.1 AndroidHttpClient类和DefaultHttpClient类 326

10.3.2 SSL认证信息处理类 327

10.3.3 SSL错误信息处理 328

10.3.4 AndroidHttpClient 328

10.4 Android RTP协议 329

10.4.1传输音频码 330

10.4.2 AudioGroup 331

10.4.3语音流RtpStream和AudioStream 332

10.5 Android SIP协议 333

10.5.1 SIP通话简介 334

10.5.2 SIP初始化 335

10.5.3 SipProfile 336

10.5.4 SipSession 337

10.5.5 SIP包错误处理 338

10.6小结 339

第11章Android网络应用分析 340

11.1 Android中使用SAX解析XML 340

11.1.1几种XML解析方式讨论 340

11.1.2 SAX解析XML的原理 341

11.1.3 SAX发现XML的根元素 342

11.1.4 SAX发现XML的子元素 345

11.2基于位置的服务 348

11.2.1位置服务的基本概念 348

11.2.2位置服务的基本类 348

11.2.3调用Google地图 350

11.2.4根据位置刷新地图显示 351

11.3媒体传输协议 353

11.3.1 MTP和PTP简介 353

11.3.2定义MTP和PTP的类型 354

11.3.3封装MTP设备信息 357

11.3.4封装MTP对象的信息 358

11.3.5封装MTP设备上存储单元的信息 360

11.4小结 362