問題タブ [offline-caching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2113 参照

android - Android ロード キャッシュのみが機能していません。WebView をオフラインで表示

インターネットに接続せずに、webview を介していくつかの Web ページを表示しようとしています。インターネットに接続していない場合は、Web ページをキャッシュに保存し、キャッシュから再度読み込むことができると考えました。しかし、それは機能していません。Web サイトが表示されません。代わりに、Web サイトが現在利用できないことがわかります。AppCachePathが で正しいかどうかは既に確認しましgetCacheDir()た。私が間違っていること、またはそれがどのように機能するか、何か考えがありますか。完璧になります。どうもありがとう。

0 投票する
2 に答える
400 参照

iphone - HTML5 LocalStorageの制限に達しましたが、オフラインキャッシュのみを使用しています

私は、機内モードのiPadで実行するように設計され、スタンドに取り付けられた、クライアント向けのオフラインWebアプリを開発しています。サーバー側の動的ページはなく、静的HTMLページ、ナビゲーションと対話機能を処理するための多くのJavaScriptコンポーネント、および多数の小さなグラフィックアセットがあります。Webサイト全体(静的html + css + js +グラフィックス)の重量は正確に8.3Mbです。

単一のHTMLファイルで宣言されたものを介してサイト全体をキャッシュしていoffline.manifestます。このマニフェストはルートディレクトリの下のすべてのファイルを絶対に参照するため、必要なすべてのファイルがキャッシュされます。

JSコードでlocalStorage、IndexedDB、またはその他のオフラインストレージ技術を使用していません。「自動」キャッシュを除いて、私はデバイス上に何も保存しません。

したがって、Webサーバーのログを確認すると、クライアントがiPadのホーム画面にWebアプリをインストールすると、すべてのファイルが一度ダウンロードされ、その後はサーバーから何もダウンロードされません。それは問題ありません。そもそも彼が望んでいたのは、完全なオフラインWebアプリです。

それでは、クライアントから数分間テストした後、彼のiPadが「ローカルストレージを10Mbから25Mbに増やす」ように要求するのはなぜですか?

参考までに、このアプリは一種のクイズで構成されています。1つのウェルカム画面、19の質問画面、1つの結果画面です。ユーザーは質問の順序で前後に移動できますが、メモリフットプリントを最小限に抑えるために、オンザフライで作成および無効化されます。とにかく、この問題がRAMアクセスに関係しているとは思わず、「ハード」で永続的なキャッシュストレージにのみ関係していると思います。

0 投票する
2 に答える
1751 参照

ruby-on-rails - Ruby on Railsアプリケーションとオンライン/オフライン同期を行う方法は?

Railsプロジェクトとオフライン同期を行う方法はありますか?

つまり、クライアントは自分のサイトを使用してフォトギャラリーを表示していますが、アクティブなインターネット接続がなくても表示できる必要があります。いつでもオンラインに戻って、新しいデータをダウンロードして、ギャラリーを表示し続けることができますか?

ありがとう!

0 投票する
1 に答える
97 参照

javascript - オフラインで利用可能な Web アプリからオンライン リソースにアクセスする方法は?

キャッシュ マニフェストなどを使用して、オフラインで使用できる Web アプリを作成しました。かなりうまく機能しますが、キャッシュ マニフェストに記載されていない写真にアクセスしたいのですが、オンラインのときに表示されません。

さらに、アプリがオフラインのときに代わりにデフォルトの画像をロードする簡単な方法はありますか?

前もって感謝します!

編集: これらの画像のパスは、別の Web サービスから動的に読み込まれ、ローカル ストレージに保存されます。

再編集:

OK私は解決策を見つけました:

次の行をキャッシュ マニフェストに追加するだけです。

通信網:

*

これにより、Web アプリは、マニフェスト ファイルの CACHE: セクションにないすべての要素にアクセスできるようになります。実際には NETWORK: セクションがないとアクセスがブロックされます。

ソース: http://ajax.sys-con.com/node/1643966/mobile

0 投票する
1 に答える
1014 参照

ipad - iPad のキャッシュを 50 MB 以上に増やしますか?

マニフェストを使用してオフライン Web アプリケーションを開発していますが、iPad の最大キャッシュ サイズについて疑問に思いました。キャッシュを 10 MB、25 MB、50 MB に増やすかどうかを尋ねられたときに、いくつかのテストを行いました。そのため、50 MB 未満のすべてが機能しているようです (インターネット接続を無効にし、Safari を再起動した後も Web サイトをナビゲートできました)。しかし、50 MB を超えることは明らかに不可能です。念のために言っておきますが、50 MB を超えることが可能かどうか知っている人はいますか?

0 投票する
1 に答える
622 参照

html - さまざまなデバイス用の可変HTML5オフラインアプリキャッシュ

HTML5ゲームを作成しています。ゲームはクロスプラットフォームであり、画面解像度が異なるデバイス用に異なるグラフィックセットがあります。低品質のセットはモバイル用で、もう1つはタブレットとPC用です。

次に、appcacheマニフェストを使用してアプリケーションをオフラインで動作させたいと思います。当然、必要なグラフィックセットのみをキャッシュしたいので、User-Agent文字列に応じて使用するマニフェストファイルを選択する必要があります。

私は運がなくてもiframeを介してhtmlファイルの条件付きロードでそれをだまそうとしていました-キャッシュはメインマニフェストのためにのみ保存されます。

デバイスに応じて異なるマニフェストファイルを選択する方法を誰かが知っていますか?

UPD [Diveintohtml5オフラインセクション1には、マニフェストの例があります。

私が理解しているように、遅延読み込みを実行し、オンライン中にアプリケーションからの読み込みを要求されたアイテムのみをキャッシュに追加することを想定しています。必要なグラフィックセットしかロードできないため、このソリューションは私の問題を解決しているようです。ただし、実際にはChormeとiOS Safariで、オフラインキャッシュにはoffline.html以外のリソースがまったくありません。

0 投票する
3 に答える
2630 参照

html - HTML5 オフライン appcache から現在のページを省略しますが、キャッシュされたリソースを使用します

パフォーマンス上の理由から、Web ページの一部で、オフラインで使用するためにキャッシュされたリソース (画像、CSS など) を使用したいと考えていますが、コンテンツが動的に生成されるため、ページ自体はキャッシュされないようにしたいと考えています。

これを行う 1 つの方法は、ページをリファクタリングして、AJAX を介して動的コンテンツをロードするか、LocalStorage を検索することです。細かいところは違うかもしれませんが、大まかに言えばそんな感じです。

可能であれば、キャッシュされたリソース (画像、CSS など) をページに使用するようブラウザに指示するだけで、(動的に生成された) HTML コンテンツ自体を実際にキャッシュしないようにする方法を見つけたいと思います。

HTML5 オフライン appcache でそれを行う方法はありますか? 次の理由から、答えは「いいえ」であるという印象を受けています。

  • マニフェストを含むページはすべてキャッシュされるため、ページ自体でキャッシュされたリソースを指定することはできません。
  • 前のページに「この別のページにはオフライン アセットを使用するが、実際にはそのページの HTML をキャッシュしない」ことを伝える方法はありません。ページ自体を指定する必要があります。つまり、HTML がキャッシュされます。

私はそれについて間違っていますか?おそらく、それを回避するためのトリッキーな(またはそれほどトリッキーではない)方法があるようです。NETWORK入力したので、appcache マニフェストのセクションにページを明示的に含めることでうまくいくかどうか疑問に思います。

0 投票する
0 に答える
823 参照

html - IOS5 AppCache が機能しない

私のサイトswitchitoff.netは、しばらくの間、appcache を喜んで使用しています。Chrome、Firefox、Safari、Mobile Safari など、appcache をサポートするすべてのブラウザで完全に動作しますが、IOS5では失敗します。

IOS4では、自分のサイトを参照してホームページに追加し、新しいショートカットからサイトを再起動できました。この段階でサイトはキャッシュされるため、ショートカットからオフラインで実行できます。IOS5で同じことを試すと、次のようになります。

開けません スイッチオフ

インターネットに接続されていないため、Switch It Off を開くことができませんでした。

Mobile Safari デバッグ コンソールにはエラーが表示されません。これをさらにデバッグする方法がわかりません。これが手がかりかどうかはわかりませんが、appcache のステータスは常にupdateready. IOS5のバグに違いないと思いましたが、誰もそれについてうめいていないので、何か間違ったことをしていると思います。

ところで、iPhone にジャンプしてテストする前に、このサイトは iPad およびデスクトップ ブラウザ (OK、ラップトップ ブラウザも) 用に設計されています。iPhone ではうまく動作しませんが、ホームページのショートカットからオフラインで実行してみると、私のエラーが表示されます。

乾杯

0 投票する
3 に答える
5648 参照

android - AndroidでキャッシュされたWebViewのバージョンを表示する

Web ビュー内でネットワークがダウンしているときに、Web サイトの HTML5 オフライン キャッシュ バージョンを表示しようとしています。

onReceivedErrorokをオーバーライドしました。ネットワークがダウンすると、このメソッドが呼び出されます。問題は、一般的な「Web ページは利用できません」というメッセージが表示されることです。

ページの HTML5 キャッシュ バージョンを表示するにはどうすればよいですか? Firefox と Chrome のデスクトップ バージョンで正常に動作するため、webapp のオフライン ストレージは確実に動作しています。

loadDataでビューを手動で呼び出すことができることはわかってonReceivedErrorいますが、HTML5 キャッシュ値をどこから取得できるかわかりません。

注:loadDataなどのダミーデータを設定しview.loadData(Uri.encode("<html><div>Page load failed</div></html>"), "text/html", "UTF-8");てからクリックバックすると(バックイベントを検出して呼び出すとwebview.goBack();、キャッシュされたバージョンのページが正常に表示されます.

WebView をセットアップするために追加したコード行を次に示します。

0 投票する
0 に答える
309 参照

html - オフライン アプリケーション キャッシュ HTML 5

Facebook ゲームを開発し、オフライン キャッシュを使用してすべてのデータをアプリケーション キャッシュに保存しました。ゲームには約 100 個の画像があり、すべての画像をマニフェスト ファイルとフォント ファイルに含めました。これには、スタイルシートと JavaScript ファイルも含まれていました。

すべて正常に動作していますが、すべてのコンテンツの最初の読み込みに非常に長い時間がかかります (> 2 分)。

ゲームの 2 ページ目または 3 ページ目にある別のマニフェストにコンテンツを分割し、そのマニフェスト ファイルにいくつかの画像を読み込む方法はありますか? (私のゲームには合計 3 つのページがあり、ゲームはクライアント側に HTML と jQuery、サーバー側に PHP を使用して開発されています)

初期ロード時間を短縮し、ロードの問題が発生することなくゲームがスムーズに動作するようにするにはどうすればよいですか? 助けてくれてありがとう!