Android アプリケーションに Google Cloud Messaging を使用しており、登録 ID の有効期限がいつ切れるかを理解しようとしています。この投稿から、Google が ID を更新する傾向があることがわかりました。ID が更新されたときにアプリケーションがどのように認識するのか知りたいです。Google が ID を更新することを決定し、私のサーバーがメッセージを古い ID に送信するまでであれば、メッセージが送信されるとは思いません。毎回登録して、IDが同じかどうかを確認する必要がありますか?
また、同じ投稿では、アプリのバージョンが変更されると ID が更新されると書かれていますが、マニフェストを使用してバージョンを変更しても、登録 ID は変更されませんでした。では、バージョンの変更を再度登録しようとするポイントは何ですか?
編集 これがサーバー側です。正規IDは正確にどこに保存されますか?
サーバー側のコード:
<?php
// Message to be sent
$message = $_POST['message'];
// Set POST variables
$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
'registration_ids' => array($_POST['registrationIDs']),
'data' => array( "message" => $message ),
);
$headers = array(
'Authorization: key=' . $_POST['apiKey'],
'Content-Type: application/json'
);
// Open connection
$ch = curl_init();
// Set the url, number of POST vars, POST data
curl_setopt( $ch, CURLOPT_URL, $url );
curl_setopt( $ch, CURLOPT_POST, true );
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $fields ) );
// Execute post
$result = curl_exec($ch);
// Close connection
curl_close($ch);
echo $result;
?>