2

私は基本的にコンテンツ駆動型の iOS アプリを開発しています。これは情報を分類しています。しかし、はい、コンテンツは頻繁に更新されます。ユーザーが今すぐ更新するか、後で更新する場合は、アラートが表示されます。したがって、私が必要とする提案は次のとおりです。

  1. コンテンツは管理者が管理し、Web サービスは PHP で記述され、バックエンドは MySQL です。ユーザーがアプリをダウンロードするとき - データベース全体をアプリと共にインストールする必要がありますか、それともデータのみを移動してデバイス データベースに保存する必要がありますか?

  2. コンテンツに更新がある場合、それはどのようにデバイスと同期されますか? 最後に行われた更新を検出するためのフラグはありますか?

これに関する任意の助けをいただければ幸いです

ありがとう

4

2 に答える 2

3

1) アプリ内よりもバックエンド データベース内のデータを更新する方がはるかに簡単で高速であるため (アプリを再構築して再送信する必要がある、承認プロセスに時間がかかるなどの理由で)、適切なデータ モデル (おそらくコア データを使用) を使用する空のデータベースを持つアプリ。最初の実行時に、アプリは Web サービスから最新のデータをダウンロードできます。

2) アプリは、最後に成功した同期のタイムスタンプをユーザー設定に保存し、その値を Web サービスへのリクエストに含めて、サービスからデータの増分更新を取得することができます。

3) 大量のデータがある場合は、同期がまだ進行中であることをユーザーに通知する明確なメッセージを表示しながら、到着するとすぐに一部のデータを表示できるように UI を設計することをお勧めします。このようにして、ユーザーはアプリとのやり取りを非常に迅速に開始できますが、アプリは引き続きバックグラウンドでデータをダウンロードし続けることができます。

于 2012-07-16T05:56:37.747 に答える
0

はい、いい考えです。私は次のプロセスを使用します。

1) アプリの初回ロード時にデータベースをダウンロードします。

2) 変更されたタイムスタンプですべてのレコードを保存します。

3) アプリケーションが起動するたびに、パラメーターを最新のタイムスタンプとして Web サービスを呼び出します。

レコードが変更または挿入されている場合は、Web サービスが提供されます。削除されたレコードの場合、各レコードには 1 つの削除フラグがあります。true の場合、レコードは削除されます。

于 2012-07-16T06:23:56.483 に答える