2011-12-06 14 views
0

iOSでSMSを傍受することはできず、サーバーをポーリングしたり、デバイスからサーバーへの未処理のHTTP要求を永続的に維持することはできません(アプリに有効なバックグラウンドモードがない限り)。サーバーからクライアントに通知を送信するApple Push Notification以外のオプションはありませんか?

したがって、サーバーからクライアントに通知を送信する必要がある場合は、APNS以外のオプションがないことが正しいですか?

がサーバーからデバイスへの通知をプッシュする必要があると(アプリケーションがバックグラウンドにあるときの状況で)ユーザーがアラートを受信して​​いない場合、これはただでは可能ではないようですすべて?

これが正しいですか?正当な創造的な回避策はありますか?

答えて

1

あなたは正しいです - アプリがバックグラウンドになったら通知を受け取るためのAPNSではなくオプションがあります。

ShortMessagesを傍受する方法はありません(バックグラウンドでもそうでなくても)。また、バックグラウンドにいるときにサーバーを永久にポーリングする方法もありません(これは、Androidアプリの場合と同じように、バッテリーが消耗するためです)。

1

アプリケーションをVOIPとして分類し、そのバックグラウンド処理モードを使用することができます。

サーバーからデバイスに通知を送信し、ユーザーが警告を受け取らないようにする必要がある場合(アプリケーションがバックグラウンドにある場合)、それはちょうどそうではないようです可能ですか?

ユーザーが直ちにアラートを受信する必要がない場合は、アプリケーションが開始されたとき、またはフォアグラウンドになったときにサーバーをポーリングできませんか?

+0

はい、サーバーにデバイスに即座にプッシュされる情報があり、アプリケーションがフォアグラウンドにない(アプリケーションがVOIPではない)場合は、明らかに解決策はありません。 – Gruntcakes

+0

あなたはどのような問題を解決しようとしていますか?アプリがバックグラウンドにあり、ユーザーに通知する必要がない場合は、次にユーザーがアプリケーションを開くときに新しいデータが表示されます。アプリがフォアグラウンドになるとポーリングすると、次にユーザーがアプリを開いたときに新しいデータが表示されます。ユーザーの視点との違いは何ですか? – Jim

+0

新しいデータがあることをユーザーに通知し、アプリを起動したときに既にダウンロードしておく必要があります。データのペイロードはAPN内に収まるよりも大きいので、プッシュ通知が送信されると、その時点でまだデータをダウンロードする必要があるため、接続状態に応じて遅延が発生します。要件は、まったく遅延がないということです。したがって、ユーザーにその存在が通知される前にデータをダウンロードする方法があるかどうかを判断しようとしています。 – Gruntcakes

関連する問題