私はアプリケーションを作成するための計画段階にありますが、アプリケーションの作成に使用したいテクノロジーをまだ選択しています。最初のアイデアはWebアプリを作成することでしたが、これにはオフラインで表示できないという欠点があります(ありましたか?)。その後、キャッシュマニフェストを発見しましたが、これはおそらく回答のように思われました。
ただし、その最初のポイントから、キャッシュマニフェストにはサイズ制限があるようです。各ブラウザーのサイズ制限の完全なリストを見つけることができないので、それが完全に衰弱しているのかどうかはわかりません(そうかもしれませんが)。私がアプリを動作させたいブラウザは、Firefox、ChromeおよびモバイルSafariブラウザです(つまり、iPadで動作する必要があります)です。
私の理解では、ほとんどの場合、キャッシュの合計制限は約5MB(ブラウザごとに異なります)ですが、これは私のニーズには十分ではないでしょう。すべてのユーザーのオンラインデータをオフラインで保存したいと考えています。これには、アップロードされたファイル(PDF、画像)や、アプリを物理的に機能させるために必要なコンテンツなどが含まれます。私が見たどの例でも、cache-manifestは、html、css、javascript、およびWebサイトの画像リソースなどのオフラインのものをキャッシュするためにのみ使用されています。ユーザーがアップロードしたPDFのオフラインストレージに適していますか?
この質問への答えが非常に大きい(私はそれがそうかもしれないと私が恐れている)場合、他の解決策はありますか?または、ブラウザの「適切な」アプリ、つまり、妥当なスペース要件があるアプリは、現時点では完全に実行不可能ですか?ブラウザーが開発の要件に追いつくのをまだ待っていますか?
編集:追加するだけですが、HTML5仕様ではCache-Manifestに制限がないことを認識していますが、すべての実装が制限しているようで、これは私が書こうとするすべてに影響します。
制限容量の詳細については、こちらをご覧ください。 http://grinninggecko.com/developing-cross-platform-html5-offline-app-1/
人々がまだこれについて疑問に思っている場合には...
現在、44MBのリソースを備えたアプリをダウンロードして、Safari(6.1)、Chrome(31)、Firefox(26)、iPad(ios7)、iPhone(ios6)でオフラインで正常にテストしています。
私が発見した唯一の問題は、アプリをホーム画面に追加したときです。これは、アプリが大きすぎてキャッシュを拡張する必要があるためと判断しましたが、これに対する処理はなく、エラーで終了します。回避策->アプリをリロードします。キャッシュを閉じて開き、再保存する=機能します。
Androidデバイスでは、Appcacheのサイズは5 MBに制限されています。Androidデバイス用のハイブリッドアプリケーションを作成している場合は、appcacheが5MBを超えないようにする必要があります。それ以外の場合、サイズ制限に達すると、appcacheのダウンロードが失敗します。
他のデバイス(iPhone、Windows、ブラックベリーなど)では同じ問題は発生しません。
モバイル
| Chrome | Android Browser | Firefox | Safari | Safari | iOS WebView | iOS WebView |
| 40 | 4.3 | 34 | 6,7 | 8 | 6,7 | 8 |
| ~ | ∞ | ∞ | 300MB | 300MB | 100MB | 100MB |
デスクトップ
| Chrome | Firefox | Safari | Safari | IE | IE |
| 40 | 34 | 6,7 | 8 | 9 | 10,11 |
| ~ | 500MB | ∞ | ∞ | ? | 100MB |
spec による制限はありませんが、制限は5 MBを超えると思います。参照 HTML5マニフェストにサイズ制限はありますか?