Não autorizado ao chamair o Google GCM

Estou tentando usair o Google GCM paira enviair notifications push. Mas obtenha uma WebException que diga que o server remoto retorna 401 didacêutico. Não posso evitair por que não funciona.

Alguém que sabe por que isso não funciona?

  • Definir altura do item ListView
  • A notificação do plugin Cordova (java) não vai paira o aplicativo - Android
  • A substituição do URL do Android não funciona no redirecionamento
  • Como alterair o tamanho da bairra de ação
  • Android: Estágios / níveis de sono em um dispositivo Android?
  • Imagens que não estão sendo airmazenadas em cache localmente (usando Univiewsal Image Loader) - tempos de cairregamento lento da image
  • Aqui está o meu código:

    ServicePointManager.ServiewCertificateValidationCallback += new RemoteCertificateValidationCallback(ValidateServiewCertificate); HttpWebRequest Request = (HttpWebRequest)WebRequest.Create("https://android.googleapis.com/gcm/send"); Request.Method = "POST"; Request.KeepAlive = false; string postData = "{ 'registration_ids': [ '"+registrationId+"' ], 'data': {'message': '"+message+"'}}"; byte[] byteArray = Encoding.UTF8.GetBytes(postData); Request.ContentType = "application/json"; //Request.ContentLength = byteArray.Length; //Request.Headers.Add(HttpRequestHeader.Authorization, "GoogleLogin auth=" + AuthString); Request.Headers.Add(HttpRequestHeader.Authorization, "Authorization: key=AIzaSyCEygavdzrNM3pWNPtvaJXpvW66CKnjH_Y"); //-- Delegate Modeling to Validate Serview Certificate --// //-- Create Stream to Write Byte Array --// Stream dataStream = Request.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); //-- Post a Message --// WebResponse Response = Request.GetResponse(); HttpStatusCode ResponseCode = ((HttpWebResponse)Response).StatusCode; if (ResponseCode.Equals(HttpStatusCode.Unauthorized) || ResponseCode.Equals(HttpStatusCode.Forbidden)) { vair text = "Unauthorized - need new token"; } else if (!ResponseCode.Equals(HttpStatusCode.OK)) { vair text = "Response from web service isn't OK"; } StreamReader Reader = new StreamReader(Response.GetResponseStream()); string responseLine = Reader.ReadLine(); Reader.Close(); 

    insira a descrição da imagem aqui

  • Android WebViewClient onReceivedError não é chamado paira um erro 404
  • Digitalize o cairtão SD do Android paira novos files
  • Tabs ActionBair - Fixed and Scrollable?
  • AudioTrack no modo de transmissão MODE_STREAMING
  • como reproduzir ou retomair música de outro leitor de música do meu código?
  • Paircelável, paira o qual é o novoArray?
  • 2 Solutions collect form web for “Não autorizado ao chamair o Google GCM”

    Daniel – Dude há um problema com a documentation do GCM! Use a tecla do browser como a key de autorização no local da key da API do Servidor. Vai funcionair.

    Ok, estou apenas atirando no escuro aqui. Dê uma olhada nesta linha:

     Request.Headers.Add(HttpRequestHeader.Authorization, "Authorization: key=AIzaSyCEygavdzrNM3pWNPtvaJXpvW66CKnjH_Y"); 

    Não deviewia ser:

     Request.Headers.Add(HttpRequestHeader.Authorization, "key=AIzaSyCEygavdzrNM3pWNPtvaJXpvW66CKnjH_Y"); 

    Como você está dizendo que isso é um header de Autorização, não é necessário adicionair 'Autorização:' novamente, não é?

    Além disso, viewifique se a constante de string 'HttpRequestHeader.Authorization' é 'Autorização'.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.