移动设备上本地SQLite的javascript客户端

时间:2011-08-25 15:38:20

标签: javascript sqlite

我熟悉SQLite使用.NET的System.Data.SQLite提供程序和使用ActionScript的Adobe AIR。我被要求调查为移动设备创建离线数据驱动应用程序所涉及的内容(目前iPhone + iPad和Android,可能是Blackberry)。该数据库必须在设备本地可用,因为用户往往在农村地区,手机接收非常不可靠和不稳定。

iDevices和Android设备上的相同javascript代码库是否会保持不变?或者每个移动操作系统都需要单独的版本吗?我看到the W3 has discontinued the standards process用于本地Web SQL数据库,因为目前只有一个SQL竞争者,至少需要两个探戈。 webkit javscript SQL API是否处于不稳定状态?

2 个答案:

答案 0 :(得分:0)

你好蒂姆

在为Android和iPhone开发以数据库为中心的应用程序时,您不会被锁定使用Sqlite。还有另一种选择,在许多情况下甚至可能更好;即CouchDB。

在这两种情况下都有可用的解决方案,可以使用相同的代码轻松开发Android和IPhone的数据库中心应用程序。

<强> CouchDB的

CouchDB虽然用Erlang编写,但基本上是一个基于JSON的数据库,使用javaScript作为其默认接口。 CouchDB可以非常快。但是,CouchDB不是关系数据库。

许可证:Apache许可证,2.0。

官方网站:http://couchdb.apache.org/

适用于Android的CouchDB:https://github.com/couchbase/Android-Couchbase

适用于iPhone的CouchDB:http://www.macworld.com/article/159606/2011/05/couchbase.html

<强> SQLite的

如果您更喜欢使用Sqlite,可以选择PhoneGap。使用PhoneGap,您可以使用与iPhone和Android相同的javaScript代码与Sqlite进行通信,只需替换中间件以匹配您正在编译的操作系统。

对于Android,中间件是 phonegap-version.jar ,而对于IPhone,该文件名为 phonegap-version.dmg

除了Android和iPhone之外,PhoneGap还可以将相同的应用程序移植到Blackberry,WebOS,Symbian和Bada。

许可证:BSD / MIT。

官方网站:http://www.phonegap.com

答案 1 :(得分:0)

SQLite是开发HTML5 Web Apps的唯一选择(如果我理解正确的话)。

您可以查看有关IndexedDB的信息,该信息已在WebKit(Chrome 12)中实现为window.webkitIndexedDB以及Firefox has implemented it.