2012-02-14 7 views
1

私は、ユーザーがサーバーに保存されたコンテンツ(CRUD)を管理できるようにするアプリを開発中です。私は、ローカルストレージ(Core Data)のデータの一部をミラーリングします。iOS:Queue HTTP calls

ユーザーがファイルを削除または更新すると、ローカルデータベースでそのファイルが削除され、サーバーにHTTP要求が送信されます。私は複数のリクエストを並行して送信したくないので、オフラインモードを実装したいと思います。私は、デバイスがインターネットに接続されているときはいつでも、リクエストを格納して実行する何らかのキューを考えています。要求が失敗した場合、キュー内の次の要求を処理する前に、ワーカーは再試行する必要があります。

これを達成するための一般的な方法は何ですか?この機能を備えたフレームワークはありますか?

答えて

3

ASIHTTPRequestもNSOperationQueueとキューの独自のバージョンを使用する例があります。

http://allseeing-i.com/ASIHTTPRequest/How-to-use#using_a_queue

これはあなたの要求をキューし、アプリケーションの流れを遮断することなく、それらを処理することができます。

オフラインモードを処理するには、データベースの「キュー」に接続したり、接続しているとき(またはユーザーが同期しているとき)に取り出して、NSOperationQueueに追加する必要があります。 NSOperationQueueは、スケジューリングを中断して再アクティブ化することができますが、実際にキューに入れられたアクションの永続的なストアとして機能するかどうかはわかりません。

+0

>私はこのライブラリで作業していないことにご注意ください。新しいプロジェクトに何か他のものを使用することを検討してください。 :) – pencil

+0

私たちが使ったアプリにはうまくいったが、それについては忘れてしまった!私はそれが価値ある例だと思って以来、私はここに参照を残す(うまくいけば) – Rob

関連する問題