Хранилище IndexedDB или HTML5 для гибридных мобильных приложений PhoneGap?

Я создаю мобильное приложение для Android и iOS с помощью PhoneGap, jQuery Mobile и jQuery.

Тип информации, которую я хочу сохранить, это текстовая информация UTF-8, примерно 500 слов.

Должен ли я использовать хранилище IndexedDB или HTML5?

500 слов слишком мало для IndexedDB?

Я читал, что IndexedDB совместим только с Android 4.4 или выше и iOS 7 или выше. Google Chrome на моем устройстве Android — 36, но ОС Android — 4.1.2, но IndexedDB, похоже, совместим с моим телефоном.

Или мне следует использовать Polyfill/WebSQL?


person Snow    schedule 21.08.2014    source источник


Ответы (1)


Это зависит от того, что вы хотите, но не забывайте, что, поскольку indexedDB является асинхронным, код может стать сложным, потому что весь зависимый код теперь также должен быть асинхронным, поэтому это будет что-то вроде ада обратных вызовов или много обещаний.

Поэтому, на мой взгляд, если размер меньше нескольких мегабайт, вам может быть лучше использовать решение для синхронизации с локальным хранилищем.

Об индексированной БД:

IndexedDB не будет работать с Android 4.3 и ниже, поэтому вам нужен полифилл для indexedDB (как вы уже сказали в своем посте). Объект indexedDB существует на этих устройствах, но на самом деле это более старая спецификация. Я могу порекомендовать https://github.com/axemclion/IndexedDBShim, если вы выберете решение для прокладки для старых устройства.

person Dick van den Brink    schedule 21.08.2014
comment
Спасибо за ваш вклад, Ван. У меня есть старый добрый друг, который работает техническим директором в другой компании, и он очень хвалил SQLite для iOS/Android. Что вы думаете о SQLite для Android/iOS? Я просмотрел StackOFlow, и оказалось, что многие разработчики вообще избегают использования IndexedDB из-за сложности. - person Snow; 21.08.2014