私はc2dmを使ってアンドロイドでサンプルプッシュ通知アプリを開発しています。ここで私のPHPコードは、サーバーからデバイスにメッセージを送信することです。Push Notification in android c2dm
function sendMessageToPhone($authCode, $deviceRegistrationId, $msgType, $messageText) {
$headers = array('Authorization: GoogleLogin auth=' . $authCode);
$data = array(
'registration_id' => $deviceRegistrationId,
'collapse_key' => $msgType,
'data.message' => $messageText //TODO Add more params with just simple data instead
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://android.apis.google.com/c2dm/send");
if ($headers)
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$response = curl_exec($ch);
curl_close($ch);
}
sendMessageToPhone("my application server auth token ","my device id","UTF-8","hello");
「情報なし」と表示されています。私のエミュレータの通知。どこが間違っているの?私を助けてください。
cURLリクエストの実行による応答は何ですか?エミュレータがC2DMメッセージを受信するために登録されている(つまり、Googleアカウントに関連付けられていますか)。そのマニフェストにC2DMアクセス許可を含めましたか? Androidのどのバージョンですか? –
私はPHPには初めてです。 $ responseを返したら、私はいくつかのリソースIDを取得しています。そして、すぐに私はエミュレータで通知を取得しています。マニフェストにすべての権限を含めました。 2.2 – AndroidRaji
を使用するJavaアプリケーションサーバーからメッセージを送信するときに正しい通知を受け取っています。 (Javaアプリケーションサーバーの認証トークンを使用) – AndroidRaji