2011-11-09 13 views
12

サイトは、Samsung Gingerbread OSでSamsung Galaxy Tabで使用されます。これまでに使用されていたブラウザには在庫ブラウザとDolphin HDがあります。ローカルストレージ内のアイテムは、ユーザーがネットワークカバレッジに入ったり出たりすると、ランダムに消えてしまいます。ストレージはまた、ブラウザのクラッシュやデバイスの再起動に完全に耐えることができないようです。奇妙な部分は、ストレージは通常完全にクリアされません、多くのアイテムが欠落しているだけです。誰でもこの問題について聞いたことがありますか?HTML5ローカルストレージが永続しない

編集:私は意味、ローカルストレージ、

localStorage["Key"] = value; 

Retrivedでは使用して:

localStorage.getItem("Key"); 

をすべての場合には、直接ローカルストレージに追加した後に、サイトには、取得したデータを使用することが可能です。しかし、通常はローミングやブラウザ/タブレットがクラッシュした後、いつの間にかデータはなくなります。私が見つけたことのすべては、ローカルストレージが持続する必要があると言っているので、ここからどこに行くのか本当に分かりません。

+2

提案:他の人が確認できるように、関連するコードを表示してください。 –

+0

モバイルブラウザの最新世代は、クッキーが消去されると同時にローカルストレージをクリアする傾向があります。それは何が起きているのでしょうか? –

+1

ただの一般的な質問です。 localStorage ["Key"]によって追加されたアイテム=サイトの使用中にそこに存在する値は、突然ランダムな時間にそれ以上存在しません。通常、ローミング後またはブラウザクラッシュ後。私はそれを一度しか複製できませんでしたが、一日に数人のユーザーがそれに入り、それが起こるとかなりの問題を引き起こします。これが既知の問題であるかどうか、他のHTML5のオフラインストレージ方法がより信頼できるものかどうかは疑問です。 – jmease

答えて

3

これをもう少しデバッグするのはどうですか?自分のコードが何らかの形で上書きされている可能性はありますか?私はPhoneGapの中のlocalStorage /のsessionStorageを使用しています 、決して、彼らが次のイベントハンドラを追加...消え

た:毎回(デスクトップブラウザ上で、およびコンソールにログインします)

window.addEventListener("storage", function(e) { 
    console.debug(e); 
}, false); 

発生しますストレージにアクセスします。あなたはまた、あなたのadb logcat(アクセスされているキーのような)に表示されるより詳細な情報を記録することができます

ストレージイベントの詳細についてはthis stackoverflow questionを見てください。

+0

ありがとうLeon。投稿を更新しないと私のせいです。イベントリスナーを追加しようとしました。ユーザーはモバイルデバイス上でのみサイトを使用しているため、書き込み先のコンソールはありません。また、リスナーはそのページからのイベントに対して起動しないため、有用であるとは言えません。私は、リスナーにサイト全体を焼き付ける方法を考え出しましたが、それにはポップアップが含まれていました。 – jmease

+0

[log4javascript](http://log4javascript.org/index.html)のようないくつかの素晴らしいjscriptロギングユーティリティがあります。このユーティリティを使用すると、サーバー([AjaxAppender](http://log4javascript.org/docs) /manual.html#ajaxappender))これらのようなモバイルの問題をデバッグするのに役立つかもしれません... – Leon

関連する問題