2012-02-02 83 views
10

它似乎之前已被问过,但我没有找到满意的答案。
在创建IOS Phone差距应用程序时,IPAD上的任何html5应用程序是否将其编译为本机应用程序时限制数据库的大小?我知道一般情况下,Web应用程序的本机存储限制为5MB。本地网络查看应用程序也有这种限制吗?UIWebView内的WebSQL/SQLite数据库的最大大小(phonegap)

回答

19

是的,WebKit DB也限于5mo。

你就可以欺骗系统这种解决方案:https://issues.apache.org/jira/browse/CB-330?focusedCommentId=13237796&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13237796

或者你也可以使用原生的SQLite数据库(相同的WebSQL)与PhoneGap的插件。该插件将数据库保存在Document文件夹中(或者您可以指定另一个文件夹),并且没有大小限制,数据由iCloud保存。 (不过要小心,苹果真的不喜欢的应用程序浪费的iCloud存储)

这里是本地人的SQLite PhoneGap的插件:https://github.com/davibe/Phonegap-SQLitePlugin关于这个插件,还有的WebSQL API之间的一些差异,这里是一个适配器:https://gist.github.com/2009518

如果数据很重要,则应将其保存到服务器。我写了一个小的lib来同步SQlite数据库到服务器:https://github.com/orbitaloop/WebSqlSync

+1

Android怎么样? – 2012-12-05 16:57:16

+0

只需注意Webkit数据删除问题已消失:在iOS 6和更高版本中,来自UIWebView对象的Web数据(SQL Web Storage和LocalStorage)可以存储在将要备份的目录中。要启用备份此数据,请将WebKitStoreWebDataForBackup键设置为YES,以应用程序的用户默认值。只有当您的应用程序依赖无法重新加载的Web内容数据时,才应该执行此操作。如果您的UIWebView对象打开指向任意网页内容的链接,则此键应设置为NO。切换此键的值不会保留现有的Web视图数据。 – 2013-01-02 02:29:10