web-dev-qa-db-ja.com

サービスがないときにモバイルアプリケーションデータを保存していますか?

ユーザーが情報を入力して中央の場所にアップロードできるモバイルアプリケーションがあるとします。私はHTML5とJavaScript(非ネイティブアプリ)のみを使用してこれを構築することを計画していましたが、誰かがサービスのない地域にいると、アプリを使用できなくなることを想定しています。

回避策として、デバイスに情報を保存し、サービスが戻るたびにそれをアップロードするネイティブアプリを作成することは可能でしょうか?もしそうなら、これを行うネイティブアプリを完全にHTML5とJavascriptで書くことは可能ですか?

3
Abe Miessler

HTML 5には ローカルストレージ 機能があります。チェックしてください。

(ほとんどのブラウザで)最大5メガしか保存できません。それだけでは不十分な場合は、ネイティブアプリを使用する選択肢がありません。


詳細情報が必要な場合はを編集します。

基本的にこれには2つの部分があります:

1)マニフェストファイルこれは、Webアプリがオフラインで機能するためにローカルに保存する必要があるファイルをブラウザに通知します。 (基本的にhtmlおよびJSファイル)

2)HTML5ローカルストレージ:これをJavaScriptでアクセスできるローカルデータベースのように考えてください。

したがって、ユーザーが(オンラインで)サイトにアクセスすると、ブラウザーはマニフェストファイルを参照し、アプリがマニフェストで指定されたオフラインモードで動作するために必要なすべてのソースファイルを保存します。 (もちろん、サーバー側のコードはオフラインで機能しないため、これはすべてhtmlおよびJSです)

また、ユーザーがオンラインのときに、ユーザーが必要なすべてのデータをローカルストレージに保存します。オンライン中に行われた変更は、サーバーとローカルストレージを更新する必要があります。

オフラインのとき、ユーザーは自分のアプリを実行するために必要なすべてのHTMLとJSにアクセスでき、HTMl5ローカルストレージにもアクセスできます。彼は自分がやりたいことを何でもすることができます(オフラインでできるようにコーディングしたものは何でも)。ローカルストルゲーに保存されたすべての更新。

オンラインに戻ると、彼は再びあなたのサイトを訪問し、オフラインで変更を加えたことがわかり、ローカルストレージとサーバーを同期します。

チェックアウト このデモ そしてこれを読んでください 本全体

5
Morons