Androidデバイスでサードパーティがプッシュ通知を送信するメカニズム
Android のサードパーティプッシュの仕組みは、サーバーとクライアントの間に長期間接続を確立して、メッセージをリアルタイムで送信することです。具体的な仕組みは次のとおりです。
- クライアント登録: アプリの実行時に、サードパーティーのプッシュサービスプロバイダーに登録して一意のデバイストークンを取得します。
- サーバー登録では、サーバーはデバイス識別子とユーザー情報を関連付け、プッシュサービスプロバイダーのサーバーに保存します。
- メッセージ送信:サーバは、プッシュ通知サービス側のサーバに対して、プッシュの内容と受信側の端末IDを指定してメッセージを送信します。
- プッシュサービスプロバイダは、メッセージを受け取ると端末IDから対応するクライアントへ配信します。
- プッシュサービスにより端末にメッセージが届けられ、端末側では受け取ったメッセージに関わる動作(通知バーメッセージの表示や注意音の再生など)を行います。
- クライアントは受信したメッセージをサーバーに返して、メッセージ受信を確認します。
プッシュ通知のリアルタイム性を確保するため、プッシュ通知サービスプロバイダーは、ハートビート検出、長時間の接続維持などの技術的手段を採用して、クライアントとサーバー間の接続を維持します。クライアントとサーバーの接続が切断されると、プッシュ通知サービスプロバイダーは接続の再確立を試み、メッセージの信頼性の高い送信を確保します。