【发布时间】:2012-11-28 12:03:57
【问题描述】:
我正在使用以下网络服务从 Android 发送推送通知。当我第一次调用这个网络服务时,它需要很长时间,并且推送通知没有在 Android 设备上传递。它仅在从 Android 调用时发生。它可以作为 web 服务完美运行。
[WebMethod]
public string SendGcm(String serviceKey,String registrationId ,string message) {
WebClient wc=new WebClient();
wc.Headers.Add("Authorization", "key=" + serviceKey);
NameValueCollection nameValues=new NameValueCollection
{
{"registration_id", registrationId},
{"collapse_key", Guid.NewGuid().ToString()},
{"data.payload", message}
};
var resp=wc.UploadValues("https://android.googleapis.com/gcm/send",
nameValues);
var respMessage = Encoding.Default.GetString(resp);
return respMessage;
}
【问题讨论】:
-
理想情况下它不应该,但是你可以检查你的代码是否也适用于测试回显服务器而不是谷歌服务器。
标签: java web-services google-cloud-messaging android-ksoap2 android-webservice