0

我想为数据库使用IndexedDB技术构建jQueryMobile应用程序。在 Web 浏览器中开发时,该应用程序正在运行。如何将此应用程序转换为原生 android 应用程序(使用 phonegap)并保留 IndexedDB 数据库中的数据?我知道我的 IndexedDB 数据库的位置在:

C:\Users\<User Name>\AppData\Local\Google\Chrome\User Data\Default\IndexedDB\

那么有没有办法让我的应用程序在移动设备上使用 IndexedDB?对于转换,我正在使用 phonegap 云,但转换后的应用程序无权访问数据库。我正在使用 Nexus 7 平板电脑进行测试。我电脑上的应用程序运行良好。

编辑 1:我正在使用 Google Nexus 7 平板电脑进行测试。Android 版本是 4.4.2,所以我想我的设备支持 IndexedDB。问题是我不知道如何在转换时从上面的位置实现文件(如何处理它),以便在我的设备上找到数据库。(我正在使用phonegap 云进行转换)。

4

3 回答 3

0

请通过此链接获得支持,INDEXDB SUPPORT

我已经在 android 4.3 上对其进行了测试,但它没有工作,但这里显示它支持 4.4。

另外,请通过此博客获取IOS

于 2014-02-11T14:04:52.537 回答
0

不幸的是,4.4 版之前的 android 浏览器不支持 IndexedDB。

检查此页面的可用性:http ://caniuse.com/indexeddb

似乎有一种方法,请查看 Iwona Trąbka 在此页面上的回答。

或者你可以使用类似Lawnchair的东西来封装数据库访问。

于 2014-02-11T14:10:05.570 回答
0

在 Android 4.x 上实现了旧版本,但在 Android 4.4 上它应该可以在没有插件的情况下工作。我为 iOS 和 Android 使用了一个 polyfill,它实际上使用了 websql。polyfill 添加了 indexedDB API,而我实际上不受支持,并将调用转换为 websql!

android 2+ 支持 websql。有关详细信息,请参阅 indexedDBShim:https ://github.com/axemclion/IndexedDBShim/

注意:polyfill 并不完美,并非所有方法都支持 IDDBKeyRange,但在大多数情况下您可以解决它。如果您将来想支持 iOS,它确实适用于 iOS 4+。

编辑:也回答你的问题,你可以按名称打开数据库。无需知道磁盘上的实际位置。

于 2014-02-11T18:19:18.680 回答