用于Android推送通知的C#FCM [英] C# FCM for Android Push Notification

查看:138
本文介绍了用于Android推送通知的C#FCM的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正尝试使用FCM将通知推送到Android设备,但似乎我错过了一些东西。这些是我遵循的步骤

I am trying to use FCM for pushing notifications to Android device but it seems that I am missing something. These are steps that I've followed


  1. https://console.firebase.google.com

  2. 从设置 - >云消息传递选项卡,我得到了服务器密钥和发件人ID

  3. 我使用这段代码

  1. Create new project in https://console.firebase.google.com
  2. From Settings -> Cloud Messaging tab, I got Server key and Sender Id
  3. I used this code

    var regId = "device id";
    string SERVER_API_KEY = "Firebase Server key";
    var SENDER_ID = "Sender ID";
    var value = "Test Notification";
    WebRequest tRequest;
    tRequest = WebRequest.Create("https://fcm.googleapis.com/fcm/send");
    tRequest.Method = "post";
    tRequest.ContentType = " application/x-www-form-urlencoded;charset=UTF-8";
    tRequest.Headers.Add(string.Format("Authorization: key={0}", SERVER_API_KEY));

    tRequest.Headers.Add(string.Format("Sender: id={0}", SENDER_ID));

    string postData = "collapse_key=score_update&time_to_live=108&delay_while_idle=1&data.message=" + value + "&data.time=" + System.DateTime.Now.ToString() + "&registration_id=" + regId + "";
    Console.WriteLine(postData);
    byte[] byteArray = Encoding.UTF8.GetBytes(postData);
    tRequest.ContentLength = byteArray.Length;

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

    WebResponse tResponse = tRequest.GetResponse();

    dataStream = tResponse.GetResponseStream();

    StreamReader tReader = new StreamReader(dataStream);

    string sResponseFromServer = tReader.ReadToEnd();


    tReader.Close();
    dataStream.Close();
    tResponse.Close();


我总是得到不匹配发件人ID错误。我错过了任何步骤?或者我必须在移动应用程序上做些什么?

I always get Mismatch Sender Id error. Am I missing any steps? or do I have to do something on mobile app?

推荐答案

我发现错误。作为后端开发人员,我只在C#部分工作。移动应用程序方面还有一步要做。移动应用程序应允许从发件人ID列表接收消息,因此我必须允许从移动应用程序端使用我在C#代码中使用的消息。一旦我做到了这一点,它的工作

I found the error. As a back-end developer I worked on C# part only. There is one more step to be done from mobile application side. Mobile app should allow receiving messages from list of Sender Ids so the one that I use in my C# code must be allowed from mobile app side. Once I did that it worked

这篇关于用于Android推送通知的C#FCM的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆