2012-02-02 82 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