2012-02-02 14 views
10

Wygląda na to, że wcześniej pytano, ale nie znalazłem satysfakcjonującej odpowiedzi. Podczas tworzenia aplikacji luki telefonicznej IOS, każda aplikacja html5 na IPAD jest ich ograniczeniem do rozmiaru bazy danych po kompilacji z natywną aplikacją? Wiem, że na ogół istnieje ograniczenie do 5 MB pamięci podręcznej dla aplikacji internetowych. Czy to ograniczenie dotyczy również natywnych aplikacji do przeglądania stron internetowych?Maksymalny rozmiar bazy danych WebSQL/SQLite w interfejsie UIWebView (phonegap)

Odpowiedz

19

Tak, WebKit DB jest również ograniczony do 5mo.

można oszukać system z tego rozwiązania: https://issues.apache.org/jira/browse/CB-330?focusedCommentId=13237796&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13237796

Albo można użyć natywną DB SQLite (tak samo jak WebSQL) z wtyczką PhoneGap. Ta wtyczka zapisuje bazę danych w folderze Dokument (lub możesz określić inny folder), a nie ma ograniczenia rozmiaru, a dane są zapisywane przez iCloud. (Ale dbać, Apple nie lubię tracić aplikacji przechowywanie iCloud)

Oto Native SQLite PhoneGap wtyczki: https://github.com/davibe/Phonegap-SQLitePlugin Odnośnie tej wtyczki, istnieją pewne różnice pomiędzy API WebSQL, tutaj jest adapter: https://gist.github.com/2009518

Jeśli dane są ważne, należy je zapisać na serwerze. Napisałem małą bibliotekę, aby zsynchronizować SQlite DB z serwerem: https://github.com/orbitaloop/WebSqlSync

+1

Co z Androidem? –

+0

Po prostu zauważ, że problem usuwania danych Webkit zniknął: W iOS 6 i nowszych dane sieciowe (SQL Web Storage i LocalStorage) z obiektu UIWebView mogą być przechowywane w katalogu, który ma zostać zarchiwizowany. Aby włączyć tworzenie kopii zapasowej tych danych, ustaw klucz WebKitStoreWebDataForBackup na TAK w domyślnych ustawieniach użytkownika aplikacji. Powinno to nastąpić tylko wtedy, gdy aplikacja bazuje na danych treści internetowych, których nie można ponownie załadować. Jeśli twój obiekt UIWebView otwiera linki do dowolnych treści internetowych, ten klucz powinien być ustawiony na NIE. Przełączenie wartości tego klucza nie spowoduje zachowania istniejących danych widoku internetowego. –

Powiązane problemy