![](/img/trans.png)
[英]how to send push notification to the android device using GCM by java server?
[英]Android GCM Push Notification server side in java
关于GCM,我有几个问题。
Decide which Google-provided GCM connection server you want to use— HTTP or XMPP (CCS).
现在我了解了实践中这两者之间的区别,但是当他说决定选择哪一个时,我不确定他对我有什么期望? 我需要为这两个做不同的事情吗? https://android.googleapis.com/gcm/send
nd传递参数发出POST请求吗? 我可以为此使用HTTPClient,对吗? 有什么特别的吗? 2-基本上就是这样,这是我的服务器代码,这是我服务器中的PHP文件
public function send_push(){
$message = "your message";
// Set POST variables
$url = 'https://android.googleapis.com/gcm/send';
$fields = array(
'registration_ids' => array("GCM_REGISTRATION"),
'data' => array( "message" => $message ),
);
$headers = array(
'Authorization: key=YOUR_API_KEY',
'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;
}
GCM_REGISTRATION是您首次运行应用以在GCM中注册后所获得的哈希值。 如果一切正常,您可以在logcat中看到
api_key是创建应用程序时获得的哈希(您可能已经在文档中看到了)
3-我认为它不必是服务器,因为它实际上是将消息发送到Google服务器,然后再将其传递到您的应用程序中
是的,http和ccs服务器之间有很大的区别。 前者涉及简单的http请求。 后者需要xmpp协议实现。
是的,如果您采用的是gcm http方法,则任何提交http请求的代码都应该起作用。
出于测试目的,您不需要服务器。 任何提交http请求的代码都可以。 但是,您必须将设备注册ID传递到服务器代码,才能发送GCM消息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.