第1篇 基础知识篇 1
第1章 蓝牙通信系统 1
1.1 蓝牙介绍 1
1.1.1 蓝牙概述 1
1.1.2 Android中的蓝牙系统 2
1.2 Android蓝牙系统的层次结构 2
1.3 和蓝牙相关的类 4
1.3.1 BluetoothSocket类 4
1.3.2 BluetoothServerSocket类 5
1.3.3 BluetoothAdapter类 6
1.3.4 BluetoothClass.Service类 12
1.3.5 BluetoothClass.Device类 12
1.4 开发一个Android蓝牙通信系统 13
1.4.1 主界面布局 13
1.4.2 客户端界面布局 13
1.4.3 实现控制服务类和线程实现类 15
1.4.4 编写测试程序文件 24
第2章 移动微信系统 30
2.1 微信系统基础 30
2.1.1 微信的特点 30
2.1.2 微信和Q信、腾讯的关系 30
2.2 开发一个微信系统 31
2.2.1 启动界面 31
2.2.2 系统导航界面 32
2.2.3 系统登录界面 41
2.2.4 发送信息界面 45
2.2.5 “摇一摇”界面 51
第3章 移动邮件系统 59
3.1 项目介绍 59
3.1.1 项目背景介绍 59
3.1.2 项目目的 59
3.2 系统需求分析 60
3.2.1 构成模块 60
3.2.2 系统流程 62
3.2.3 功能结构图 63
3.2.4 系统功能说明 63
3.2.5 系统需求 63
3.3 数据存储设计 64
3.3.1 用户信息类 64
3.3.2 SharedPreferences 68
3.4 具体编码 70
3.4.1 欢迎界面 70
3.4.2 系统主界面 74
3.4.3 邮箱类型设置 80
3.4.4 邮箱收取设置 83
3.4.5 邮箱发送设置 88
3.4.6 邮箱用户检查 93
3.4.7 设置用户别名 98
3.4.8 用户邮件编辑 101
第4章 移动微博系统 111
4.1 微博介绍 111
4.2 微博开发技术介绍 112
4.2.1 XML-RPC技术 112
4.2.2 Meta Weblog API客户端 114
4.3 在Android上开发移动博客发布器 114
4.3.1 XML请求 114
4.3.2 常用接口介绍 115
4.3.3 具体实现 116
4.4 分析腾讯Android版微博API 122
4.4.1 源码和jar包下载 123
4.4.2 具体使用 123
4.5 详解新浪Android版微博API 127
4.5.1 新浪微博图片缩放的开发实例 129
4.5.2 添加分享到新浪微博 135
4.5.3 通过JSON对象获取登录新浪微博 139
4.5.4 实现OAuth认证 141
第5章 网络RSS阅读器 143
5.1 实现流程 143
5.2 具体实现 143
5.2.1 建立实体类 143
5.2.2 主程序文件ActivityMain.java 147
5.2.3 实现ContentHandler 149
5.2.4 主程序文件ActivityShow-Description.java 152
5.2.5 主布局文件main.xml 153
5.2.6 详情主布局文件showdescription.xml 153
5.3 打包、签名和发布 155
5.3.1 申请会员 155
5.3.2 生成签名文件 158
5.3.3 使用签名文件 163
5.3.4 发布 164
第6章 开发一个音乐播放器 165
6.1 项目介绍 165
6.1.1 项目背景介绍 165
6.1.2 项目的目的 165
6.2 系统需求分析 166
6.2.1 构成模块 166
6.2.2 系统流程 170
6.2.3 功能结构图 171
6.2.4 系统功能说明 171
6.2.5 系统需求 172
6.3 数据库设计 172
6.3.1 字段设计 173
6.3.2 E-R图设计 173
6.3.3 数据库连接 174
6.3.4 创建数据库 174
6.3.5 操作数据库 175
6.3.6 数据显示 176
6.4 具体编码 177
6.4.1 设置服务信息 177
6.4.2 播放器主界面 178
6.4.3 播放列表功能 190
6.4.4 菜单功能模块 193
6.4.5 播放设置界面 196
6.4.6 设置显示歌词 199
6.4.7 文件浏览器模块 200
6.4.8 数据存储 204
第7章 魔塔游戏 206
7.1 魔塔简介 206
7.1.1 游戏简介 206
7.1.2 发展版本 206
7.2 设计游戏框架 207
7.2.1 设计界面视图 207
7.2.2 屏幕处理 208
7.2.3 更新线程 210
7.2.4 游戏界面显示 211
7.3 绘制处理 212
7.3.1 绘制地图 213
7.3.2 绘制游戏主角 215
7.3.3 绘制对话界面 222
7.3.4 战斗界面 223
7.3.5 图层管理器 225
7.4 实现游戏音效 229
第8章 NBA激情投篮 231
8.1 篮球游戏介绍 231
8.1.1 篮球游戏介绍 231
8.1.2 游戏策划 231
8.1.3 策划游戏 232
8.1.4 准备工作 232
8.2 项目架构 233
8.2.1 总体架构 233
8.2.2 规划类 233
8.3 具体编码 235
第9章 象棋游戏 258
9.1 棋牌游戏介绍 258
9.1.1 棋牌游戏发展现状 258
9.1.2 经典游戏介绍 258
9.2 规划项目 259
9.2.1 规划流程 259
9.2.2 准备工作 260
9.3 项目架构 260
9.3.1 总体架构 261
9.3.2 规划类 261
9.4 具体编码 262
9.4.1 实现控制类 262
9.4.2 欢迎界面类 263
9.4.3 菜单界面类 267
9.4.4 游戏帮助类 269
9.4.5 游戏界面框架类 271
9.4.6 象棋走法类 279
9.4.7 思考时间类 280
9.4.8 走法规则类 280
第10章 暴走轨迹计步器 286
10.1 系统功能模块介绍 286
10.2 系统主界面 286
10.2.1 布局文件 287
10.2.2 实现主Activity 289
10.3 系统设置 306
10.3.1 选项设置 307
10.3.2 生成GPX文件和KML文件 309
10.4 邮件分享提醒 315
10.4.1 基本邮箱设置 315
10.4.2 实现邮件发送功能 319
10.5 上传OSM地图 322
10.5.1 授权提示布局文件 322
10.5.2 实现文件上传 325
第11章 智能楼宇灯光控制系统 327
11.1 布局文件 327
11.1.1 主布局文件 327
11.1.2 实现蓝牙控制界面 328
11.1.3 显示公司介绍信息 329
11.1.4 系统功能介绍 329
11.1.5 第一路调光设置界面 330
11.1.6 执行主界面 335
11.1.7 不同房间的照明亮度参考值 336
11.1.8 产品的详细介绍 336
11.1.9 五路调光设置界面 337
11.2 实现程序文件 341
11.2.1 主Activity 341
11.2.2 监听单击事件 349
11.2.3 设置系统的蓝牙参数 351
11.2.4 控制第一路到第四路光线的亮度 355
11.2.5 控制第五路到第八路光线的亮度 364
第12章 网络防火墙系统 374
12.1 系统需求分析 374
12.2 编写布局文件 375
12.3 编写主程序文件 377
12.3.1 主Activity文件 377
12.3.2 帮助Activity文件 389
12.3.3 公共库函数文件 389
12.3.4 系统广播文件 399
12.3.5 登录验证 400
12.3.6 打开/关闭某一个实施控件 401
第13章 Map地图 405
13.1 项目分析 405
13.1.1 规划UI界面 405
13.1.2 数据存储设计 405
13.2 具体实现 406
13.2.1 新建工程 406
13.2.2 主界面 407
13.2.3 新建界面 409
13.2.4 设置界面 412
13.2.5 帮助界面 417
13.2.6 地图界面 420
13.2.7 数据存取 433
13.2.8 实现Service服务 438
第14章 QQ聊天记录查看器 441
14.1 Android安全机制概述 441
14.1.1 Android的安全机制模型 442
14.1.2 Android具有的权限 442
14.1.3 Android的组件模型(Component Model) 443
14.1.4 Android安全访问设置 443
14.1.5 Linux系统的安全机制 444
14.1.6 沙箱模型 450
14.1.7 Android应用程序的安全机制 452
14.2 分区加载机制 453
14.3 系统分析 454
14.3.1 背景分析 454
14.3.2 系统目标 454
14.4 反汇编分析 454
14.5 实现QQ聊天记录查看器系统 463
14.5.1 系统架构 463
14.5.2 实现公共类 464
14.5.3 实现主界面 470
14.5.4 实现选择界面 473
14.5.5 实现好友列表界面 474
14.5.6 实现聊天记录界面 476
第15章 吃货选择器 481
15.1 需求分析 481
15.1.1 背景分析 481
15.1.2 系统目标 481
15.1.3 系统模块划分 481
15.2 界面设计 482
15.3 构建jQuery Mobile平台 483
15.4 页面实现 484
15.4.1 第1个页面——系统主页 484
15.4.2 第2个页面——选择城市 485
15.4.3 第3个页面——商家列表 488
15.4.4 第4个页面——商家详情 489
15.5 编写样式文件 491
15.5.1 设置基本样式 492
15.5.2 设置标题栏的样式 493
15.5.3 设置系统主页的样式 493
15.5.4 修饰第2个页面 494
15.5.5 修饰第3个页面 495
15.5.6 修饰第4个页面 497
第16章 智能心率计 500
16.1 什么是心率 500
16.2 开发一个Android版心率计 500
16.2.1 扫描蓝牙设备 501
16.2.2 蓝牙控制界面 506
16.2.3 蓝牙BLE设备适配器 521
16.2.4 蓝牙BLE服务适配器 524
16.2.5 传感器测试心率 530
16.2.6 图形化显示心率值 534
第17章 仿陌陌交友系统 542
17.1 陌陌介绍 542
17.1.1 陌陌发展现状 542
17.1.2 特点介绍 542
17.2 实现系统欢迎界面 543
17.2.1 欢迎界面布局 543
17.2.2 欢迎界面Activity 546
17.3 实现系统注册界面 549
17.3.1 注册界面布局 549
17.3.2 注册界面Activity 552
17.3.3 输入验证码界面Activity 558
17.3.4 设置密码界面Activity 561
17.3.5 设置用户名界面Activity 563
17.3.6 设置生日界面Activity 565
17.3.7 设置头像界面Activity 568
17.4 实现系统主界面 572
17.4.1 主界面布局 572
17.4.2 实现主界面Activity 573
17.4.3 实现“附近的人”界面 574
17.4.4 实现“附近的群组”界面 578
第18章 开发一个Android优化系统 582
18.1 优化大师介绍 582
18.1.1 手机优化大师客户端 582
18.1.2 手机优化大师PC端 582
18.2 项目介绍 583
18.2.1 规划UI界面 584
18.2.2 预期效果 584
18.3 准备工作 585
18.3.1 新建工程 585
18.3.2 主界面 586
18.4 编写主界面程序 591
18.5 进程管理模式模块 593
18.5.1 基础状态文件 594
18.5.2 CPU和内存使用信息 595
18.5.3 进程详情 595
18.6 进程视图模块 601
18.6.1 进程主视图 601
18.6.2 进程视图 602
18.6.3 获取进程信息 602
18.7 进程类别模块 604
18.7.1 加载进程 604
18.7.2 后台加载设置 607
18.7.3 加载显示 608
18.8 文件管理模式模块 608
18.8.1 文件分类 608
18.8.2 加载进程 609
18.8.3 文件视图处理 612
18.9 文件管理模块 613
18.9.1 文件夹 613
18.9.2 显示文件信息 614
18.9.3 操作文件 615
18.9.4 获取进程的CPU和内存信息 616
18.10 系统测试 619