Android Web应用高级编程

Android Web应用高级编程

基本信息
原书名: Pro Android Web Apps: Develop for Android using HTML5, CSS3 & JavaScript
原出版社: Apress
作者: (美)Damon Oehlman    Sébastien Blanc    [作译者介绍]
译者: 张龙
丛书名: 移动与嵌入式开发技术
出版社:清华大学出版社
ISBN:9787302280507
上架时间:2012-3-30
出版日期:2012 年3月
开本:16开
页码:300
版次:1-1

样章试读:http://product.china-pub.com/59885

内容简介

       现在,我们已经可以使用web技术为android和其他移动设备开发应用。通过将html5的功能与css3及java script整合,web应用开发者可以通过熟悉的工具开发出引人入胜的移动应 用。现在我们不仅可以构建出与原生应用(nativeapp)相媲美的移动webapp,还可以实现“编写应用一次,就可以在各种不同的设备上运行”。
  通过《android web应用高级编程》一书的学习,熟悉webapp开发的开发人员可以掌握如何为android移动平台开发webapp。
  《android web应用高级编程》主要内容
  通过真实的应用示例学习如何构建移动webapp
  了解诸如google app engine等云平台为android web app提供了哪些帮助
  了解html5在android及其他移动设备上的现状
  理解如何通过诸如phone gap等原生桥接框架来使用设备级的功能
  探索用于构建移动webapp的各种ui框架
  学习如何在移动webapp中包含地图并使用基于位置的服务
  学习如何将社交功能集成到android webapp中
  阅读完《androidweb应用高级编程》一书后,你不仅能很好地理解android中的web应用世界,还能掌握一些辅助工具和框架的使用方法。借助于书中的实际示例,你将了解通过web方式来构建移动应用所面临的机遇与挑战。

作译者:

Damon Oehlman是一位经验丰富的软件开发人员与技术经理,目前居住在澳大利亚布里斯班。他曾在多种平台上进行过开发,从Windows到Web开发,现在则转向了移动开发,Damon对移动Web应用开发“一次编写,到处运行”的理念有着独到的见解,这也促使他将精力转向了这里。
由于看到了移动开发日益增长的势头,Damon放弃了稳定的工作,与人联合创立了移动开发公司Sidelab(www.sidelab.com)。Sidelab为移动Web应用开发提供专业的开发服务,特别是在地图、基于位置的服务以及数据可视化等领域。

 

目录

《android web应用高级编程》
第1章 入门 1
1.1 了解android平台功能 1
1.1.1 设备连接 2
1.1.2 触摸 2
1.1.3 地理位置 3
1.1.4 硬件传感器 3
1.1.5 本地数据库与存储 4
1.1.6 相机支持 4
1.1.7 消息与推送通知 4
1.1.8 webkit web浏览器 5
1.1.9 进程管理 5
1.1.10 android os特性小结 6
1.2 准备开发环境 6
1.2.1 文本编辑器与工作目录 7
1.2.2 web服务器 7
1.2.3 模拟器 9
1.3 hello world 13
1.4 小结 15
第2章 构建移动html输入表单 17
.2.1 面向移动web的html 17
2.1.1 面向移动的网页 17
2.1.2 添加表单元素 21
2.2 添加样式 22
2.2.1 使用css3的表单样式 24
2.2.2 改进页面标题的外观 26
2.2.3 针对不同的屏幕尺寸编写代码 27
2.2.4 处理设备方向的变化 28
2.3 添加表单验证 32
2.4 小结 38
第3章 html5 storage api 39
3.1 web storage api 39
3.1.1 使用json将对象保存到web storage中 41
3.1.2 local storage与session storage 45
3.2 web sql database 45
3.2.1 使用客户端数据库保存任务清单条目 46
3.2.2 数据库的版本化与升级 51
3.3 小结 53
第4章 构建多页面应用 55
4.1 单个html文件、多个应用页面 55
4.1.1 创建视图管理器 58
4.1.2 实现视图动作 60
4.2 构建应用的主界面 62
4.2.1 修改viewmanager功能 65
4.2.2 主界面的存储需求 66
4.2.3 装配主界面 70
4.3 构建所有任务界面 72
4.4 实现视图栈 78
4.5 小结 81
第5章 与云进行同步 83
5.1 探索在线存储的选择 83
5.1.1 在线同步存储的需求 83
5.1.2 避免3层架构 84
5.1.3 用户认证 84
5.1.4 javascript同步库 84
5.1.5 可能的同步解决方案 85
5.2 google app engine入门 85
5.2.1 在本地部署jsonengine 86
5.2.2 选择合适的同步模式 87
5.2.3 向jsonengine发送离线数据 87
5.3 针对在线同步更新用户界面 89
5.4 开发桌面界面 92
5.4.1 查询jsonengine实例 92
5.4.2 将应用部署到云中 95
5.5 小结 95
第6章 与原生应用竞争 97
6.1 添加轻量级动画与类似于原生应用的布局 97
6.1.1 添加简单的旋转加载器 97
6.1.2 添加可滚动的内容 100
6.1.3 修改动作栏 102
6.2 为应用添加位置感知特性 103
6.3 离线运行应用 108
6.3.1 离线缓存清单文件 108
6.3.2 探索隐蔽的离线缓存特性 109
6.3.3 检测连接状态 111
6.4 小结 112
第7章 探索交互性 113
7.1 html5 canvas简介 113
7.2 为canvas绘制增加交互性 115
7.2.1 交互:使用鼠标 115
7.2.2 交互:使用触摸 117
7.3 实现canvas动画 119
7.3.1 创建动画循环 120
7.3.2 绘制一帧动画 121
7.3.3 绘制图像:考虑设备dpi 124
7.4 高级动画技术 128
7.4.1 在动画中实现逼真的移动 128
7.4.2 canvas变换与动画 132
7.4.3 小汽车动画的变换 134
7.5 小结 137
第8章 基于位置的服务与移动地图 139
8.1 基于位置的服务 139
8.2 地理社交网络 140
8.3 移动地图 141
8.3.1 使用google maps显示地图 141
8.3.2 tile5:另一个html5 mapping api 143
8.3.3 向google map添加标记 146
8.3.4 显示标记的详细信息 147
8.4 针对移动优化的地图ui 149
8.4.1 地图ui模型 149
8.4.2 编写移动地图ui样板 150
8.4.3 在样板代码中实现ui导航 154
8.4.4 使用导航栏选择标记 159
8.5 小结 166
第9章 使用phonegap桥接原生应用 167
9.1 桥接框架简介 167
9.1.1 何时使用phonegap 168
9.1.2 下载phonegap 168
9.2 示例phonegap应用 168
9.2.1 构建示例应用 170
9.2.2 探索示例应用 175
9.3 一个简单的phonegap地图应用 179
9.3.1 修改示例phonegap项目 179
9.3.2 将现有代码转换为phonegap应用 184
9.4 小结 187
第10章 集成social api 189
10.1 连接到web api 189
10.1.1 何谓jsonp 189
10.1.2 处理缺少jsonp支持的api 194
10.1.3 geominer api简介 196
10.2 在moundz中定位资源 198
10.2.1 使用geominer api找到附近资源 200
10.2.2 使用geolocation追踪位置 203
10.3 实现用户登录 206
10.3.1 构建欢迎与登录界面 206
10.3.2 twitter anywhere与登录过程 208
10.3.3 另一种通过geominer实现的twitter认证 212
10.4 小结 215
第11章 移动ui框架比较 217
11.1 移动ui框架概览 217
11.1.1 框架之间的异同点 217
11.1.2 为框架比较做好准备 219
11.2 jo 222
11.2.1 jo入门 222
11.2.2 当moundz遇到jo 224
11.3 jqtouch 229
11.3.1 jqtouch入门 229
11.3.2 将jqtouch应用到moundz上 231
11.4 jquery mobile 235
11.4.1 jquery mobile入门 236
11.4.2 moundz与jquery mobile 238
11.5 sencha touch 243
11.5.1 sencha touch入门 243
11.5.2 moundz与sencha touch 245
11.6 小结 252
第12章 完善与打包应用以进行发布 255
12.1 继续使用jquery mobile 255
12.1.1 恢复登录界面 255
12.1.2 改进导航布局 259
12.2 搜集资源 261
12.2.1 构建资源详细信息界面 261
12.2.2 使用geominer实现资源追踪 267
12.3 将moundz打包为原生应用 269
12.3.1 针对phonegap打包 269
12.3.2 处理应用权限 272
12.4 phonegap、认证与intent 273
12.4.1 之前的web认证流程 273
12.4.2 android intent概览 274
12.4.3 使用phonegap插件处理
intent 276
12.5 打包应用以进行发布 281
12.6 小结 284
第13章 移动计算的未来 285
13.1 移动计算时代 285
13.1.1 全球范围的现象 285
13.1.2 桌面已死 286
13.1.3 拥抱渐进增强 287
13.2 移动技术预测 288
13.2.1 工具与库的改进 289
13.2.2 设备架构的变化 290
13.2.3 面向未来架构的编码 291
13.3 物联网 291
13.3.1 硬件传感器网络 292
13.3.2 人体传感器 293
13.4 小结 294
附录a 调试android web应用 295

译者序

  随着科技的日益进步,现在我们已经逐渐步入了移动世界。移动开发浪潮席卷全球,智能手机与平板电脑的销量日益增加,这不仅为最终用户的生活和工作带来了极大的便利,同时也为众多的开发者创造了展示自己的舞台。
  自Google推出Android系统以来,Android家族一直呈现出蓬勃发展的态势。世界上已经有多家厂商在开发、研制基于Android系统的手机与平板电脑,如三星、摩托罗拉、联想、HTC、华为等,Android生态圈也表现出了欣欣向荣的发展势头。无数的开发者涌入Android开发的世界中,本书也在这个时机下应运而生。
  本书与其他讲述Android开发的书籍最大的区别在于:目前绝大多数Android开发书籍依然在介绍如何构建原生应用,而本书的重点则在于如何通过最先进的HTML5、CSS3与JavaScript等标准和技术构建基于Android的Web应用。Web应用是应用未来的发展趋势,而本书正是契合了这种趋势,讲述了AndroidWeb应用开发所涉及的方方面面的知识与技术。
  本书通过深入浅出的讲解帮助读者迅速进入到AndroidWeb应用开发的世界中。即便读者不具备Web应用开发相关的技能也能通过本书快速掌握移动Web开发所涉及的各方面技能与技巧。本书通过大量示例帮助读者深刻理解原生应用与Web应用之间的差异,如何构建基于Android的Web应用,同时还详细讲解了如何通过桥接框架将AndroidWeb应用转换为原生应用以在Google市场上发布;此外,本书还对目前移动世界中的流行UI框架Jo、jQTouch、jQueryMobile与SenchaTouch进行了分析与比较,这样读者就可以根据书中的介绍为自己的应用选择合适的框架。
  除了AndroidWeb应用开发本身所涉及的内容外,本书还通过大量篇幅详细介绍了如何实现基于位置的服务与移动地图、如何集成SocialAPI并探讨了移动计算的未来,这些都是移动Web开发者的兴趣所在。相信通过本书的学习,读者会对AndroidWeb应用开发拥有更加深刻和清晰的认识。
  翻译技术书籍是一项艰苦的劳动,在这里我要将我最真挚的谢意送给我的妻子张明辉。本书翻译期间,我们在经历了8年的相识后终于步入了婚姻的殿堂,本书的出版也是赐予我们最好的结婚礼物。将最真诚的感谢送给我的父母,没有你们的哺育和教诲就不会有今天的我。
  感谢清华大学出版社的李阳老师,认识你是我的荣幸,你的专业与认真都给我留下了深刻的印象。
  本人从事Android相关开发工作已经有两年多,在这期间积累了不少经验,深谙移动开发的精髓。曾翻译过《Spring高级程序设计》、《iPhone游戏开发》、《iPhoneSDK编程入门经典:使用Obiective-C》、《设计原本:计算机科学巨匠Frederick P Brooks的思考》等著作。本人还是国内高端技术站点InfoQ中文站编辑、满江红开放技术研究组织成员,参与了Spring2.5官方文档的翻译工作,同时拥有5年以上的JavaEE培训讲师经历。
  对于译者来说,能将英文转换为中文并给读者带来切实的帮助是我最大的荣幸。因此,您在阅读过程中所发现的问题都将是我的责任,也真诚希望各位读者不吝赐教。由于译者水平有限,失误和遗漏之处在所难免,恳请读者批评指正。敬请广大读者提供反馈意见,读者可以将意见反馈到wkservice@vip.163.com,我会仔细查阅读者发来的每一封邮件;以求进一步提高今后译著的质量。
                                                                                                                                                                                                         张龙

 

 

你可能感兴趣的:(android,Web,html5,PhoneGap,webapp,web应用开发)