У меня возникли проблемы с Indexeddb, он, похоже, перестает работать, когда вы привязываете веб-приложение к главному экрану. Все работает нормально, когда работает в браузере Safari. Это известное ограничение?Indexeddb не работает на iPhone IOS 8 из веб-приложения
ответ
Известная проблема. Среди других ошибок iOS8 IndexedDB.
window.indexedDB объект как в «Домашнем экране», так и в веб-приложении «Кордова» на iOS 8 является нулевым. И еще - это только для чтения. Так indexedDBShim также не удалось ...
Подход, с window._indexedDB (https://github.com/axemclion/IndexedDBShim/issues/167) работает для меня ...
IndexedDB наполовину поддерживается Cordova! У них есть только только для чтения базы данных (суммарно бесполезно) Но вы можете сделать обходной путь, используя polyfill, например Polyfill Indexeddb
Задачи о polyfill в случае ios8 есть, что indexdb прокладка обнаружить, что indexdb установлен , но не зная, что они являются версией только для чтения, они используют window.indexdb, а не прокладку. Поэтому вы должны принудительно использовать indexshim вместо window.indexeddb.
Открыть код pollyfill найти блок кода:
if ((typeof window.indexedDB === "undefined" || poorIndexedDbSupport) && typeof window.openDatabase !== "undefined") {
window.shimIndexedDB.__useShim();
}
else {
window.IDBDatabase = window.IDBDatabase || window.webkitIDBDatabase;
window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction;
window.IDBCursor = window.IDBCursor || window.webkitIDBCursor;
window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange;
if(!window.IDBTransaction){
window.IDBTransaction = {};
}
/* Some browsers (e.g. Chrome 18 on Android) support IndexedDb but do not allow writing of these properties */
try {
window.IDBTransaction.READ_ONLY = window.IDBTransaction.READ_ONLY || "readonly";
window.IDBTransaction.READ_WRITE = window.IDBTransaction.READ_WRITE || "readwrite";
} catch (e) {}
}
и заменить:
window.shimIndexedDB.__useShim();
вы можете использовать в индексированной с window.shimIndexedDB
- 1. IndexedDB с iOS 8/Safari
- 2. iOS 8 setValuesForKeysWithDictionary не работает на iPhone 5/iPhone 4s
- 3. Поддерживает ли iOS 8 IndexedDB с UIWebView?
- 4. UIActivityViewController не отображается на iPhone + iOS 8
- 5. VTCompressionSessionCreate работает на iOS 9, но не на iOS 8
- 6. Uploadifive не работает IOS 8
- 7. Почему Google Maps SDK не работает на iPhone iOS 8?
- 8. UIActivityViewController не работает на iPad? iOS 8
- 9. iOS 8 GameCenter не работает на устройстве
- 10. iPhone NSURLSessionTask не работает на IOS 6
- 11. Windows 8 IndexedDB createObjectStore
- 12. Xamarin.Forms.Labs Mediapicker не работает на iOS 8
- 13. CLLocationManager не работает на iOS 8 Simulator
- 14. UIScreenEdgePanGestureRecognizer не работает на iOS 8
- 15. UIWindow subviews не работает на iOS 8
- 16. self.close() больше не работает на iOS 8?
- 17. NSUserDefaults не работает на симуляторе IOS 8
- 18. Xamarin.iOS NSUrlSession не работает на iOS 8
- 19. Изменение ширины MasterViewController в UISplitViewController iOS 8 iPhone не работает
- 20. IOS 8 UIMenuController не работает
- 21. Восстановление IOS 8 не работает
- 22. iOS 8 MPMoviePlayerPlaybackDidFinishNotification не работает
- 23. iOS 8 UISplitViewController не работает
- 24. ios 8 - прокрутка не работает
- 25. Ad hoc не может работать на iPhone 5 iOS 8
- 26. Значение вертикального выравнивания с длиной не работает на iOS 8
- 27. Обои на iOS 8
- 28. UITextFieldDelegate работает на iOS 8, но не iOS 7
- 29. iOS 8, Xcode 6 - Локализация не работает
- 30. Indexeddb в Chrome на IOS - если доступно?
Я помню, кто-то еще жалуясь примерно то же самое недавно. Извините, я не могу найти ссылку. – dumbmatter