3

追いかけっこをして、何を求めているのかを知りたい方のために。私の質問には、以下の段落で番号が付けられ、太字で示されています。

1.)Androidソーシャルネットワーキングアプリに適切な通知システムを実装する方法を理解しようとすると、かなりの時間がかかりますか?これまでのところ、ポーリングとプッシュの2つの選択肢があります。プッシュは、ポーリングよりも優れています。バッテリーを節約し、通知をプッシュするための推奨される方法は、Google Cloud Messaging(GCM)を使用することですが、私が得られないのは 2です。 。)サーバーをプッシュする理由は何ですか?および/または3.)新しいデータが利用可能になったときにプッシュするようにサーバー側を設定するにはどうすればよいですか? さらなる調査によると、Facebookはほぼリアルタイムの通知システムを実現することしかできません。bcは、サーバー側のapi / library / technologyと呼ばれる、誰がオンラインで誰がそうでないかを検出するようなものを持っています(これが重要な理由は明確ではありません)。まだ) 。4.)Facebookのようなソーシャル通知システムを実装しようとした私のためのヒントを持っている人はいますか?

その他の重要な情報:

  • 現在、API(PHP)にCodeigniterRestサーバーを使用しています

  • 独立して実装できる別の言語(Java、Ruby、Javascript)のソリューションがない限り、既存のAPIを使用して実装できるphpソリューションを好みます(別名、通知以外のすべてに既存のAPIを使用できます)

  • GCMの使い方を説明したり、チュートリアルを教えてくれる人を探していません。私は調査を行い、GCMプッシュ通知を起動して実行するいくつかの「例」を取得しましたが、これまでに見つかったチュートリアルのいずれも、サーバーを単独でプッシュさせる方法を示していません。

  • ユーザーに通知する必要があるのは、新しい友達リクエスト、他のユーザーからの新しいプライベートメッセージ、通知されたユーザーが投稿したコンテンツへの新しいコメント、ユーザーがコメントしたコンテンツへの新しいコメントなどです(fbの通知と同様)コメントがコメントされたステータスに追加された場合)

4

1 に答える 1

5

あなたが説明したタスク(友達リクエスト、プライベートメッセージ、通知など)の場合、GCMは間違いなく進むべき道です。イベントが発生するとサーバーがGCMメッセージを送信し、Googleがメッセージの送信を管理します。電話がオンになっていることなどを心配する必要はありません。

これをすべてまとめようとしているように聞こえますが、欠落している部分が1つあります。それは、GCMメッセージの実際の送信です。少なくとも私の経験では、自動プッシュの概念はありません。各プッシュは、送信されるメッセージや新しい友達リクエストなど、発生するアクションに基づいています。たとえば、サーバーで友達リクエストを処理してデータベースを更新するコードをすでに設定している場合は、コードを少し追加して、リクエスト先のGCM IDを検索し、クライアントに通知するGCMメッセージを送信する必要があります。友達リクエストを受信したこと。Androidクライアント側では、このメッセージを受信し、友達リクエストを受信したときに実行したいクライアント側コードを実行するGCMBaseIntentServiceを拡張するクラスがあります(ローカル通知の投稿、UIの更新など)。

于 2013-02-19T03:38:24.687 に答える