プッシュ通知システムはどのように機能していますか?
Googleサーバーへのバックグラウンドで実行されるアクティブなTCP / IP接続はありますか?
Manifest
)。Googleサービスが「実際の仕事」を行っており、アプリが単に「受信者」を登録していることを想像できます。上記の説明は、Android固有ではなく、より「一般的」であり、シンプルに保つように努めました;)
プッシュ通知システムはどのように機能していますか?
Googleサーバーへのバックグラウンドで実行されるアクティブなTCP / IP接続はありますか?
Manifest
)。Googleサービスが「実際の仕事」を行っており、アプリが単に「受信者」を登録していることを想像できます。上記の説明は、Android固有ではなく、より「一般的」であり、シンプルに保つように努めました;)
回答:
はい、AndroidはGoogleのサーバーへのアクティブな接続を1つ保持しますが、スマートフォンのアプリにGCMメッセージが送信されるまでトラフィックは送信されないため、電力やデータをあまり使用しません。電話には、すべてのアプリで使用される接続が1つだけあります。GCMを使用する新しいアプリをインストールしても、余分な負荷はかかりません。
GCMの最初のステップは、サードパーティのサーバー(メールサーバーなど)がGoogleのGCMサーバーにリクエストを送信することです。このサーバーは、その開いた接続を介してデバイスにメッセージを送信します。Androidシステムはメッセージを見て、どのアプリ向けかを判断し、そのアプリを起動します。GCMを使用するには、アプリがAndroidに登録されている必要があり、関連する権限が必要です。アプリが起動すると、メッセージのデータを使用してすぐに通知が作成される場合があります。GCMメッセージのサイズは非常に限られているため、アプリは代わりにサードパーティサーバーへの通常の接続を開いて詳細情報を取得する場合があります(たとえば、新しいメールのヘッダーをダウンロードする)。
プッシュ通知を使用する利点は、新しいデータを確認するためにアプリを定期的に実行する必要がなく、電力とデータの両方を節約できることです。GCMのような一元化されたメカニズムを持つことの利点は、デバイスが1つのオープンネットワーク接続のみを必要とし、Android GCMシステムのみが実行を継続する必要があることです。独自のサーバーへの接続。
古い質問への遅い返信ですが、それを置く価値があります。
GCMは、2018年4月に廃止され、GoogleはGCMに似たFCMを使用することを推奨しています。