2016-07-04 8 views
0

私は管理者として私のすべてのクライアント(モバイル)に通知を送信できるideに取り組んでいます。私はGCMと他のサービスを探して見つけました...もっと単純な解決策があるかどうかを知りたいのですが。プッシュ通知が簡単で、おそらくサーバーがあるかどうか確認してください。

新しい通知を確認するために、すべてのクライアント(モバイル)から1時間ごとにサーバーに電話をかけることを考えました。そしてもしあれば、それらを入手して、クライアント(モバイル)にそれらの通知を提示してください。

+2

GCMは、アプリケーションで使用できる最も信頼性が高く簡単なプッシュメッセージングサービスです。初心者には分かりにくいですが、googleのチュートリアルやデモアプリがいくつかあります。継続的な通話を行うと、アプリの効率が低下します。 GCMに移行するには時間がかかりますが、後で成果を上げることになります。 –

+2

iOSでは、このようなスケジューリングを実行することはできません。したがって、それは挑戦的な選択肢ではありません。しかし、とにかくプッシュについて実際に複雑なことは何ですか? – Gruntcakes

答えて

0

Pollingバッテリーの消費が増え、余分な不要な処理(@MohammedAtifのコメントでも言及されているように)は、クライアントアプリケーションがサーバーに電話をかけても空になった場合などです。実際に何も起こっていないので、このプロセスは無駄です。

GCMはそうしません。その流れについてはofficial docsを参照してください。

ライフサイクルフロー

  • 下流メッセージを送受信します。
    • メッセージを送信します。アプリケーションサーバーからクライアントアプリケーションにメッセージが送信されます。
      1. アプリケーションサーバーからGCM接続サーバーにメッセージが送信されます。
      2. GCM接続サーバーは、デバイスがオフラインの場合にメッセージをエンキューして保存します。
      3. デバイスがオンラインの場合、GCM接続サーバーはデバイスにメッセージを送信します。
      4. デバイスでは、クライアントアプリケーションはプラットフォーム固有の実装に従ってメッセージを受信します。詳細については、プラットフォーム固有のマニュアルを参照してください。
    • メッセージを受信します。クライアントアプリケーションは、GCM接続サーバーからメッセージを受信します。また、最近のI/O 2016年に発表された

は、GCMの後継者は現在、プッシュ通知サービスを持っていないだけでFirebase Cloud Messaging、ですが、また自由のための(1例はAnalyticsをある)他の機能を備えています。

全体的に、GCM(またはFCM)を使用する方がポーリングよりも簡単な方法です。あなたが送信したメッセージや他のメッセージのキューイングを処理します。

関連する問題