私はAndroidアプリに取り組んでいます。ユーザーには、管理者とクライアントの 2 種類があります。管理者に平文でいくつかの通知を投稿させたいだけで、それらはクライアントに通知されます。問題は、管理者からクライアントに通知を転送するために何を使用すればよいかということです。Google App Engine と Google Cloud Messaging (GCM) の助けを借りてそれが可能であるとどこかで読みましたが、Google App Engine での作業は非常に複雑です。使用できるより良いオプションはありますか?
5 に答える
GCM プッシュ通知には何らかのサーバーが必要なため、Google アプリ エンジンは要件に最適です。別の方法として、Parse SDK も試してみることができます。
サービスをご利用Amazon S3
いただけます。詳細については、http: //aws.amazon.com/s3/を参照してください。
サーバー側のプログラミングに夢中になりたくないのに、プッシュ通知としてアプリケーションで何らかの文字列を受信したいという懸念がある場合は、これを試して調べることができます。
あなたが持っている最良の選択は確かにだと思いますGoogle Cloud Messages
。実装するものはすべてそれに非常に似ている必要があることに注意してください。
これを使用したくない場合は、他のいくつかの可能性が頭に浮かびます (ただし、前述したように、最終的にはGCM
の動作をエミュレートします)。
Socket
クライアント側でリッスンを実装します。HTTP POST
この方法では、最初に、接続先を知る必要があるため、接続する各クライアントがなんらかの方法 (リクエストなど) で信号とIP
アドレスを送信する必要があることを確認する必要があります。この方法では、通知を送信するたびに各デバイスに接続し、それを介してメッセージを送信し、Socket
タイムアウトを処理する必要があります (たとえば、メッセージを配信しようとして接続が X 回拒否された場合)。 、クライアントが切断されたため、考慮できます)。一元化された「ボード」の実装。このアプローチにより、クライアントは中央の掲示板 (たとえば、
HTTP
サイト) に接続し、たとえば 30 秒ごとにポーリングし、新しいメッセージだけを表示します。このようにして、すでに表示されているメッセージを制御し続け、新しいメッセージだけを表示する必要があります。このアプローチの欠点は、最初は誰でも (アプリを使用していない場合でも) アクセスできるようにする必要があることですが、それを回避するために追加のセキュリティ対策を実装できます (たとえば、登録したクライアントのみを許可するなど)。をHTTP POST
リモート サーバーに送信する)、それ以外の場合はエラー ページにリダイレクトするか、エラーを返し430 Forbidden
ます。
最終的に試してみたい場合GCM
(想像するよりも簡単です)、私は以前に、それを実装するために何をすべきかを段階的なガイドにまとめた回答を書きました。