为什么 Chrome 在 iOS 8.4 上说 indexedDB 为空? Safari 有它

Why does Chrome on iOS 8.4 say indexedDB is null? Safari has it

在 iOS 8.4 (iPad Air) 上,我可以在 Safari 中使用 IndexedDB,但在 Chrome 中它说它是空的。相反,它有 WebSQL。

为什么会这样?有什么方法可以在 Chrome iOS 上获取 IndexedDB 还是没有添加? (奇怪的是 returns null 而不是 undefined)。

//Returns null
console.log( window.indexedDB );
console.log( window.webkitIndexedDB );

//Returns undefined
console.log( window.mozIndexedDB );
console.log( window.OIndexedDB );
console.log( window.msIndexedDB );

这是因为 Chrome 使用 WebView 而不是 iOS8 中新的 WkWebView

iOS WebView 不支持 indexedDb(它在那里是只读的,所以即使通过 websql 启用 indexedDb 的 polyfill 也不起作用)

您可以在此处找到有关 Chrome 问题跟踪器的更多信息:https://code.google.com/p/chromium/issues/detail?id=423444