谷歌Android的云消息 [英] Android google cloud messaging

查看:173
本文介绍了谷歌Android的云消息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图从我的服务器到谷歌云服务器发送消息,但我有问题,它...
我得到的服务器密钥(主要针对服务器应用程序),将其设置为这个code:

  $头=阵列(
    授权:键='。我的服务器密钥,
    内容类型:应用程序/ JSON
);
$ CH = curl_init();
curl_setopt($ CH,CURLOPT_URL,$网址);
curl_setopt($ CH,CURLOPT_POST,真正的);
curl_setopt($ CH,CURLOPT_HTTPHEADER,$头);
curl_setopt($ CH,CURLOPT_RETURNTRANSFER,真正的);
curl_setopt($ CH,CURLOPT_SSL_VERIFYHOST,0);
curl_setopt($ CH,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($ CH,CURLOPT_POSTFIELDS,json_en code($域));
$结果= curl_exec($ CH);

发送消息后,我有这样的结果是:

未经授权
错误401

我使用这种IP:78.47.150.20

但是当我使用测试IP 0.0.0.0/0我没有任何问题....


解决方案

 函数sendNotification时($ registrationIdsArray,$ messageData){
  $ apiKey =YOUR_API_KEY; $头=阵列(内容类型:应用/ JSON,授权键=$ apiKey。);
 $数据=阵列(
 '数据'=> $ messageData,
 registration_ids'=> $ registrationIdsArray
 );$ CH = curl_init();  curl_setopt($ CH,CURLOPT_HTTPHEADER,$头);
curl_setopt($ CH,CURLOPT_URLhttps://android.googleapis.com/gcm/send);
curl_setopt($ CH,CURLOPT_SSL_VERIFYHOST,0);
curl_setopt($ CH,CURLOPT_SSL_VERIFYPEER,0);
curl_setopt($ CH,CURLOPT_RETURNTRANSFER,真正的);
curl_setopt($ CH,CURLOPT_POSTFIELDS,json_en code($数据));$响应= curl_exec($ CH);
curl_close($ CH);返回$反应;
}

i try to send message from my server to google cloud server, but i have problem with it... i get server key(Key for server applications), set it to this code:

 $headers = array(
    'Authorization: key=' .My server key,
    'Content-Type: application/json'
);
$ch = curl_init();
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_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields));
$result = curl_exec($ch);

after sending message i have such result:

Unauthorized Error 401

I use such ip:78.47.150.20

but when i use test ip 0.0.0.0/0 i haven't any problems....

解决方案

function sendNotification($registrationIdsArray, $messageData) {
  $apiKey = "YOUR_API_KEY";

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

$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) );

$response = curl_exec($ch);
curl_close($ch);

return $response;
}

这篇关于谷歌Android的云消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆