Comment envoyer Android notifications push via GCM sur C# .Net
Je suis nouveau sur Android GCM notifications push et j'ai lu pile de postes, mais ne pouvait pas obtenir une réponse claire.J'ai aussi lu Créer de notification push sur android pour obtenir une meilleure compréhension de la façon dont GCM œuvres. J'ai également utilisé le gcm-démo-serveur et gcm-démo-client fourni par le SDK. Cependant, voici mes doutes et de ce que j'ai essayé jusqu'à présent:
- Concernant le lien que j'ai mis, le téléphone qui a l'application enregistre pour obtenir la clé d'enregistrement. Est-ce une clé unique pour tous les téléphones qui utilisent la même application?
- N'cette clé d'enregistrement expire dans tous les cas? (E. g. Une application qui s'exécute en tâche de fond)
- En supposant que j'ai la clé d'enregistrement, j'ai essayé le code suivant extrait de notification push via GCM à mon application. C'est écrit en c# .net. S'il vous plaît laissez-moi savoir si ce que j'ai mentionné ci-dessus peut être réalisé à l'aide de l'extrait de code suivant:
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"; }
- Est-il un moyen direct de l'envoi de notifications push sans le téléphone d'abord être enregistrés sur notre serveur personnalisé?
OriginalL'auteur Pavan Welihinda | 2013-04-27
Vous devez vous connecter pour publier un commentaire.
Référer Code:
Referance Lien:
http://www.codeproject.com/Tips/434338/Android-GCM-Push-Notification
Ai eu de travail en changeant "®istration_id=" "®istration_id=". Merci à tous 🙂
GoogleAppID = le serveur de clé api && id = l'IDENTIFIANT d'inscription (184 caractères) && SENDER_ID = 12 chiffres de l'ID de l'application (le numéro de projet) (Merci les commentaires sur le projet de code de la page.
Cela n'a pas fonctionné pour moi. Charitha Réponse travaillé tho. 😀
OriginalL'auteur Freelancer
Code ressemble peu long mais ça fonctionne. Je viens d'envoyer une notification push sur mon téléphone, après avoir passé 2 jours en mettant en œuvre le code suivant dans le projet C#. J'ai renvoyé un lien au sujet de cette mise en œuvre, Mais ne le trouva pas à poster ici. Il en sera de partager mon code avec vous. Si vous voulez tester la Notification en ligne, vous pouvez visiter à cette lien.
Vous ne pouvez pas familier avec des mots comme apiKey, deviceId. Ne vous inquiétez pas, je vais vous expliquer quels sont-ils et comment les créer.
Si quelqu'un a besoin de l'aide de laisser un commentaire.
Heureux De Codage.
-Charitha-
Suivez ce lien srimansaswat.wordpress.com/2016/11/15/...
OriginalL'auteur Charitha Goonewardena
Juste pour information pour les nouveaux visiteurs sur ce post, si vous voulez envoyer un même message à plusieurs périphériques, puis envoyez simplement séparées par des virgules, les identifiants de l'appareil dans registration_id paramètre de la requête.
Voici un joli article sur ce
http://www.codewithasp.net/2015/11/send-message-gcm-c-sharp-single-multiple.html
OriginalL'auteur Nikhil Gaur
Cette n'a jamais travaillé pour moi et c'est difficile à déboguer plus en passant une liste d'inscription jeton n'est pas clair -attendez le passage d'un tableau de chaînes séparées par des virgules au lieu de la chaîne , le fait que cela est très simple requête post, j'ai créé ma propre classe avec une méthode de retour de la réponse du serveur, et il fonctionne très bien:
Utilisation
Classe
OriginalL'auteur Mina Gabriel
Il est forfait PushSharp.
Vous permet de communiquer avec presque tous les populaires api de notification.
Exemple de code:
OriginalL'auteur dariol