第一篇 入门篇 3
第1章 初步了解Cordova 3
1.1认识Cordova 3
1.1.1 Cordova的发展 3
1.1.2 Cordova的特色 4
1.1.3 Cordova的优势 6
1.2 Cordova的小伙伴们 7
1.2.1 jQuery Mobile 7
1.2.2 jQuery Touch 8
1.2.3 jQ iPhone UI 9
1.3小结 9
第2章 Cordova入门 10
2.1开发环境的搭建 10
2.1.1安卓开发环境的搭建 10
2.1.2 iOS开发环境的搭建 17
2.1.3 Cordova的配置 19
2.2跨平台的HTML 5 21
2.3更好玩的CSS 3 22
2.4完美兼容浏览器的jQuery框架 24
2.5小结 25
第3章 开始前的准备 26
3.1 HTML 5,你真的准备好了吗 26
3.2 HTML 5的若干练习 29
3.2.1实现渐变的背景和圆角的按钮 29
3.2.2利用JavaScript响应用户的操作 32
3.2.3利用CSS 3生成动画 34
3.2.4利用JavaScript让“流氓兔”跑步 37
3.3关于界面设计 39
3.4使用jQuery Mobile进行界面制作 42
3.5编辑器的选择 45
3.6 Cordova中的API能干什么 46
3.7小结 48
第二篇 基础知识篇 51
第4章 Cordova的本地事件 51
4.1什么是生命周期 51
4.1.1 Activity的生命周期 51
4.1.2通过实例体验Activity的生命周期 53
4.1.3 Cordova的生命周期 55
4.2使用程序加载事件 57
4.3使用被动消息事件 60
4.4使用主动消息事件 63
4.5小结 65
第5章 设备信息的获取 66
5.1 Cordova获取设备信息 66
5.2 device类的异常情况 68
5.3实战:用Cordova制作一个简单的应用 69
5.3.1界面设计及实现 69
5.3.2为应用加入功能 73
5.4小结 76
第6章 通讯录信息的获取 77
6.1创建一个Contact对象 77
6.2利用find()方法查询通讯录 79
6.3 Contact对象的属性 81
6.4联系人的创建、读取、修改和删除 84
6.5 ContactField对象的深入研究 87
6.6小结 89
第7章 Cordova的消息提示 90
7.1 notification警告的使用 90
7.2 notification确认对话框的使用 92
7.3 notification显示可以传递变量的对话框 94
7.4 notification控制蜂鸣器和震动 96
7.5小结 97
第8章 加速度传感器 98
8.1获取当前的加速度 98
8.2监视设备的加速度 100
8.3详解acceleration对象 103
8.4加速度传感器的使用 103
8.4.1游戏 103
8.4.2抽奖 104
8.4.3更多更强大的交互 104
8.5实战:制作“马上有一切”的动画 104
8.5.1原形设计 105
8.5.2素材准备 105
8.5.3动画实现 106
8.5.4最终实现 110
8.6小结 114
第9章 设备传感器 115
9.1利用Geolocation类获取设备地理信息 115
9.2利用getCurrentPosition()方法获取设备所在坐标 116
9.3使用watchPosition()方法监控设备的位置变化 119
9.4设备方向的获取 122
9.5监视设备方向的两种方法 124
9.6小结 128
第10章 Cordova对音频的控制 129
10.1利用Cordova播放音频的方法 129
10.2利用pause()方法暂停播放音乐 131
10.3利用stop()方法停止播放音频文件 133
10.4获取音频文件的更多信息 135
10.5播放指定位置的音乐 138
10.6使用Cordova录制声音 140
10.7释放音频资源 143
10.8实战:制作一个简单的“录音机”软件 143
10.8.1需求分析 143
10.8.2界面实现 144
10.8.3界面交互的实现 150
10.8.4录音和播放功能的实现 153
10.8.5最终的组合 155
10.9小结 157
第11章 Cordova中的文件操作 158
11.1使用FileReader读取文件 158
11.2使用FileWriter编写文件 163
11.3使用FileSystem获取文件系统信息 168
11.4 FileEntry类简介 169
11.5 DirectoryEntry类的简介 174
11.6使用FileTransfer向服务器上传文件 178
11.7其他与文件系统相关的类 181
11.8小结 185
第12章 多媒体资源的捕获 187
12.1声音的采集 187
12.2图像信息的采集 191
12.3视频的采集 195
12.4鸡肋的MediaFileData对象 196
12.5小结 197
第13章 Cordova本地存储的使用 198
13.1 HTML 5中的本地存储功能 198
13.1.1为什么需要本地存储 198
13.1.2 HTML 5的本地存储 199
13.2 Cordova中的本地存储功能 201
13.3数据库的使用 202
13.4数据库内容的读取 207
13.5键值对的使用方法 210
13.6小结 212
第三篇 项目实战篇 215
第14章 打造一款类Flappy Bird的小游戏 215
14.1需求分析 215
14.2模型建立 217
14.3界面设计 219
14.4游戏的设计和实现 223
14.4.1“像素鸟”的飞行 223
14.4.2“像素鸟”的跳跃和下落 225
14.4.3碰撞检测功能 229
14.5界面的美化 232
14.6缺陷和不足 233
14.6.1玩法上的缺陷 233
14.6.2功能上的贫乏 234
14.6.3人机交互不友好 234
14.7小结 235
第15章 实战Cordova新闻应用 236
15.1项目开始前的“闲言碎语” 236
15.2项目需求 238
15.3界面设计和实现 238
15.3.1新闻列表的设计和实现 238
15.3.2新闻内容页的实现 241
15.3.3界面的进一步整合 246
15.4利用Ajax获取服务器上的信息 248
15.4.1 Ajax的一个简单实例 248
15.4.2 JavaScript跨域解决方法 250
15.4.3服务端的实现 252
15.5让数据显示出来 256
15.5.1新闻列表的显示 256
15.5.2新闻内容的显示 258
15.5.3最终的整合 259
15.6小结 263
第16章 实战Cordova制作号码本 264
16.1项目介绍 264
16.2为Cordova编写插件 265
16.2.1实现发短信的插件 265
16.2.2为Cordova编写电话拨号插件 271
16.3界面设计 272
16.4界面的实现 274
16.4.1联系人列表的实现 274
16.4.2新建联系人界面的实现 276
16.4.3短信编辑界面的实现 277
16.5界面功能的实现 279
16.5.1联系人数据的生成 279
16.5.2页面的整合 284
16.6最终功能的实现 289
16.7小结 290