3

Chrome for Android での IndexedDB サポートの状態について混乱しています。

HTML5 RocksのTodo リストのデモは、私のデスクトップの Chrome 23 で問題なく動作します。Android 4.0.4 の Chrome 18 では、有望に見えます: window.webkitIndexedDB が存在し、データベースを開いてストアを作成できます。しかし、ストアに書き込もうとすると、READ_ONLY_ERR: DOM IDBDatabase Exception 9.

Chrome for Android のいくつかの概要は、それが IndexedDB をサポートしていることを示していますが、より深い議論やドキュメント、またはそれをうまく使用している人々の例を見つけることができません。

4

1 に答える 1

4

READ_ONLY_ERR: DOM IDBDatabase 例外 9

エラーは、問題が何であるかを示しています。読み取り専用トランザクション内でオブジェクト ストアにデータを書き込もうとしています。readwrite でトランザクションを開く必要があります。

db.transaction(["scope"], "readwrite");

Android 4 に実装されている indexeddb のバージョンがわからないため、引き続き整数値を使用している可能性があります。その場合、次を使用する必要があります: window.webkitIDBTransaction.READ_WRITE (Webkit バージョンが存在する場合) または window.IDBTransaction.READ_WRITE (ネイティブ バージョンが存在する場合)。

db.transaction(["scope"], window.webkitIDBTransaction.READ_WRITE);

EDIT プロジェクトのソースコードを調べたところ、すでに「読み書き」バージョンが使用されていることがわかりました。Android版にはまだ実装されていないのでしょうか?私が示した 2 番目の可能性を使用することをお勧めします。

于 2012-10-07T06:48:04.740 に答える