2

API を介して JSON 情報としてアクセスする製品の価格変更をユーザーに通知する iOS アプリを作成しようとしています。新しい JSON について n 分ごとにサーバーを繰り返しチェックし、特定の条件が満たされた場合にユーザーに通知を送信するバックグラウンド タスクが必要です。これを行う正しい方法は何ですか?

4

2 に答える 2

2

以前の投稿者が述べたように、これはポーリングよりもサーバー側で行う方が適切です。ただし、Apple Push Service を使用してクライアント デバイスに通知することは、理想的なソリューションではありません。問題は、(Apple によると) 配送が保証されておらず、配送を確認できないことです。ユーザーはプッシュ通知を拒否する可能性があり、送信しすぎると Apple は通知の送信を拒否する可能性があります。信頼できる方法で通知をクライアントにプッシュし、どちらも iOS API を備えているPubNubや などのサービスを使用する方がはるかに優れています。Pusher彼らは非常に安価です。車輪を再発明してお金を節約したい場合は、それらがどのように機能するかを調べて、独自のバージョンを作成できます.

もちろん、クライアント側のポーリングを行うこともできますが、その場合は非同期NSOperationが特に適しています (バックグラウンド スレッドで実行され、NSNotificationCenter状況が変化したときに通知を投稿できます)。実装方法の詳細については、こちらをご覧ください。

于 2013-10-17T02:43:55.863 に答える
0

これはうまくいきません。おそらくより良い解決策は次のとおりです。

  1. JSON データ ソースをポーリングするサーバーをセットアップします。
  2. データ ソースが変更された場合は、Apple Push Service を使用してユーザーに通知します。
  3. 通知を受信したら、バックグラウンド フェッチ セッションを開始します。
于 2013-10-17T02:27:56.200 に答える