Android からプッシュ通知を送信するために、次の Web サービスを使用しています。この Web サービスを初めて呼び出すと、時間がかかりすぎて、プッシュ通知が 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;
}