2012-07-17 48 views
1

我正在從C2DM遷移到GCM。我遵循了migration document中的步驟,但我不確定如何在終端shell窗口中推送測試消息。它是否像C2DM方法一樣,或者不是?如何將C2DM更改爲GCM?

+0

我自己做了這個遷移。使用'GoogleCloudMessaging'非常簡單,它不像C2DM那樣簡單易用。下載一些示例並學習Google Play服務的「方式」,然後從那裏進行終端外殼窗口 – Erik 2013-10-02 22:08:54

回答

0

看來官方文檔還沒有完全由Google提供(請參閱here)。至少這是我在新版GPE中嘗試創建新的「App Engine Connected Android Project」時發現的。但他們「計劃在七月底發佈下一個版本」。我認爲,到那時,他們應該有一個完整的文檔,如何繼續進行您正在進行的遷移。

0

這裏是PHP,你可以使用少量,只是把這個變成一個PHP文件(「GCM-push.php」),然後運行,如:

php gcm-push.php 

你需要設置你的設備註冊ID和GCM API密鑰。

<?php 
// Message to send 
$message = "the test message"; 

// Put your device token here (without spaces): 
$registrationId = "DEVICE_REG_ID"; 

// GCM API Key 
$apiKey = "INSERT_YOUR_KEY"; 

$headers = array("Content-Type:" . "application/json", "Authorization:" . "key=" . $apiKey); 
$data = array(
    'data' => $message, 
    'registration_ids' => array($registrationId) 
); 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
curl_setopt($ch, CURLOPT_URL, "https://android.googleapis.com/gcm/send"); 
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0); 
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); 
error_log(json_encode($data)); 
$response = curl_exec($ch); 
curl_close($ch); 
error_log($response);