0

我已經建立在谷歌雲端通訊(GCM) 一個應用程序,他們給我:推送通知(GCM)使用Asp.net(該通知沒有收到)(瀏覽器密鑰)

  1. 發件人ID
  2. API-KEY

我已經創建一個Android應用程序,客戶可以用來註冊他們的設備
到雲端..(而且沒關係)。

現在我想推送一個通知給其餘的設備,如果任何用戶使用我的Android應用程序更改數據中的某些東西(SQL SERVER DATABASE)。

我發現這個代碼...

private string SendGCMNotification(string apiKey, string postData, string postDataContentType = "application/json") 
     { 
      ServicePointManager.ServerCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateServerCertificate); 

      // 
      // MESSAGE CONTENT 
      byte[] byteArray = Encoding.UTF8.GetBytes(postData); 

      // 
      // CREATE REQUEST 
      HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("https://android.googleapis.com/gcm/send"); 
      Request.Method = "POST"; 
      Request.KeepAlive = false; 
      Request.ContentType = postDataContentType; 
      Request.Headers.Add(string.Format("Authorization: key={0}", apiKey)); 
      Request.ContentLength = byteArray.Length; 

      Stream dataStream = Request.GetRequestStream(); 
      dataStream.Write(byteArray, 0, byteArray.Length); 
      dataStream.Close(); 

      // 
      // SEND MESSAGE 
      try 
      { 
       WebResponse Response = Request.GetResponse(); 
       HttpStatusCode ResponseCode = ((HttpWebResponse)Response).StatusCode; 
       if (ResponseCode.Equals(HttpStatusCode.Unauthorized) || ResponseCode.Equals(HttpStatusCode.Forbidden)) 
       { 
        var text = "Unauthorized - need new token"; 
       } 
       else if (!ResponseCode.Equals(HttpStatusCode.OK)) 
       { 
        var text = "Response from web service isn't OK"; 
       } 

       StreamReader Reader = new StreamReader(Response.GetResponseStream()); 
       string responseLine = Reader.ReadToEnd(); 
       Reader.Close(); 

       return responseLine; 
      } 
      catch (Exception e) 
      { 
      } 
      return "error"; 
     } 


     public static bool ValidateServerCertificate(
                object sender, 
                X509Certificate certificate, 
                X509Chain chain, 
                SslPolicyErrors sslPolicyErrors) 
     { 
      return true; 
     } 

但是當我需要執行方法(它要求我給它的Browser-APIKey參數)

string deviceId = "APA91bHsQUsnYLHSFkmmJE8AgXEU--_nqPOJ5q2sfZIpCI1ZiJnmi2-IrZCqwummfJB94uVmqgT-ZWkyeIrICU8GpPvAOdmUfiVtYRmmA7bVAaKPuerJUcRUisveOe5Jp36-3fUK7VlDvwcme0SaJiwJU9B1y1EkF6YTQ00g"; 
    string message = "some test message"; 
    string tickerText = "example test GCM"; 
    string contentTitle = "content title GCM"; 
    string postData = 
    "{ \"registration_ids\": [ \"" + deviceId + "\" ], " + 
     "\"data\": {\"tickerText\":\"" + tickerText + "\", " + 
       "\"contentTitle\":\"" + contentTitle + "\", " + 
       "\"message\": \"" + message + "\"}}"; 

首先是 - >此方法是否會幫助我正確發送推送通知?或者它可以改進得更好?

如果好...

從我在哪裏可以得到Browser KEY

在此先感謝:)

回答