Board logo

标题: 使用 Google Gears 开发离线应用(1)简介 [打印本页]

作者: look_w    时间: 2018-8-9 09:55     标题: 使用 Google Gears 开发离线应用(1)简介

开始之前您是否设想过,拔掉网线但依然能够访问网页,并在该网页上的操作都有效,这样一个情景?
当网络状况总处于糟糕的状态,你就会为自己在线辛辛苦苦填写了半天的数据将无法提交而苦恼着(数据甚至会丢失)。那有没有一个策略来处理这个糟糕的情况,甚至可以让用户不考虑网络连接与否(网络连接不应该是用户关心的事情)?
这些虽然都是遐想,但 Google 在致力把它们变成现实(从开发者的角度去看,这些情况可以描述为,用户浏览器离线状态下,用户提交的数据将无法与服务器同步)。Google 在 2007 年 5 月发布了 Gears,它是一种为生成离线网络应用软件而开发的开源技术,Google 希望能在广大开发者的帮助下测试完善功能和发现产品的局限性。简单地说,它是 Google 推出的开源的浏览器插件,而开发者围绕着这个插件进行开发。2008 年 3 月,Google 推出了移动版 Gears,应用进程开始蔓延。
关于本教程本教程首先介绍了 Google Gears 的基本概念和各个模块,采用基于 Java 的 Web 开发与 Google Gears 结合,提供了为解决实际需求而搭建离线应用示例。
目标通过本教程的学习,您将了解到当今离线应用的各种策略,并且能够学习到基于 Gears 的离线开发技术。您将会意外地发现,Gears 各项离线技术(3 个模块)可以分离使用,例如客户端本地存储,网页捕获机制,Javascript 后台工作池等。
先决条件要学习本教程,您需要对 Ajax 技术有一定的了解,并且熟悉 JSP。
安装要求本文示例均在 Windows XP SP2 系统上测试完成。您要确保以下工具在系统上有效(参见 ):
Google Gears 介绍Google Gears 是一个开源的浏览器插件,它支持用户浏览器能够使用开发者创建的基于 Gears 的离线应用。它提出了一种离线应用的思想,它的三大核心模块将帮助开发者更好地运用这个思想来开发。Gears 技术是基于客户端语言 JavaScript 技术的扩展。
架构Gears 的离线思想:参考以下 Gears 的架构图,正常(网络连接正常)的 Web 应用在架构图中走的路线是沿着水平线横着与 Internet 通信。如果网络连接失败,用户依然能够访问,Data Switch 组件则不向 Internet 提交数据(即使提交也会失败),而向本地的客户端提交数据,将数据暂存在客户端本地的轻便型数据库里(Gears 使用的是 sqlite),等待到网络连接恢复时,再选择向 Internet 提交那些暂存的待提交的数据。
图 1. Gears 架构此时,您将会产生一些疑问:
Gears 的三大核心模块将告诉您如何做到这些。
三大核心模块初识 Gears访问 Google 的  下载 Google Gears 的安装文件,安装时确保网络连接正常。
安装完后,就可以使用 Gears 了。对于 Gears 开发, 还提供了很多有用的工具和 Sample。
有兴趣的读者可以自行研究一下。在此,我们仅使用 Google 提供的一个本地数据库的操作工具。解压下载好的包,您将发现包内 tools 文件夹里的 dbquery.html 文件。将 tools 文件夹放置 Tomcat 目录下的 webapp 文件夹下,启动 Tomcat 服务器,确保您能够访问 dbquery.html。访问成功,您将看到这样的页面。
图 2. dbquery.html 页面使用这个工具,您将可以访问 sqlite。在 tools 文件夹里您还会发现名为“gears_init.js”的 JavaScript 文件,此文件将是所有 Gears 应用的向导文件。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0