首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

使用 Google Gears 开发离线应用(1)简介

使用 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 系统上测试完成。您要确保以下工具在系统上有效(参见 ):
  • 浏览器:
    • Firefox 1.5 或更高版本
    • Internet Explorer 6 或更高版本
  • JDK 1.4 或以上版本;
  • Tomcat 5.5 或以上版本;
  • 开发工具选用 Eclipse(可选);
Google Gears 介绍Google Gears 是一个开源的浏览器插件,它支持用户浏览器能够使用开发者创建的基于 Gears 的离线应用。它提出了一种离线应用的思想,它的三大核心模块将帮助开发者更好地运用这个思想来开发。Gears 技术是基于客户端语言 JavaScript 技术的扩展。
架构Gears 的离线思想:参考以下 Gears 的架构图,正常(网络连接正常)的 Web 应用在架构图中走的路线是沿着水平线横着与 Internet 通信。如果网络连接失败,用户依然能够访问,Data Switch 组件则不向 Internet 提交数据(即使提交也会失败),而向本地的客户端提交数据,将数据暂存在客户端本地的轻便型数据库里(Gears 使用的是 sqlite),等待到网络连接恢复时,再选择向 Internet 提交那些暂存的待提交的数据。
图 1. Gears 架构此时,您将会产生一些疑问:
  • Gears 用什么语言和 sqlite 交互?
  • 网络恢复后再向服务器提交数据,意味着从 sqlite 里读取数据并删除等 IO 操作,浏览器如何承受如此重的负担?
  • 网络连接失败真的依然能访问网页?
Gears 的三大核心模块将告诉您如何做到这些。
三大核心模块
  • 本地服务器:此模块用于存储网络资源文件,以便离线情况下访问网页。
  • 本地数据库:此模块用于存储和访问用户离线情况下提交的数据。
  • 工作者池:它是一个提高 JavaScript 工作效率和页面性能的模块,使 JavaScript 代码像后台进程一样运行而不影响用户访问网页。
初识 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 应用的向导文件。
返回列表