我正在尝试使用控制台应用程序向Android发送通知。
请在下面找到我的代码。
public AndroidFCMPushNotificationStatus SendNotification(string serverApiKey, string senderId, string deviceId, string message)
{
AndroidFCMPushNotificationStatus result = new AndroidFCMPushNotificationStatus();
try
{
result.Successful = false;
result.Error = null;
var value = message;
var fcmurl = ConfigurationManager.AppSettings["fcmurl"];
WebRequest tRequest = WebRequest.Create(fcmurl);
tRequest.Method = "post";
tRequest.ContentType = "application/x-www-form-urlencoded;charset=UTF-8";
tRequest.Headers.Add(string.Format("Authorization: key={0}", serverApiKey));
tRequest.Headers.Add(string.Format("Sender: id={0}", senderId));
string postData = "data.message=" + value + "&data.time=" + System.DateTime.Now.ToString() + "®istration_id=" + deviceId + "";
Byte[] byteArray = Encoding.UTF8.GetBytes(postData);
tRequest.ContentLength = byteArray.Length;
using (Stream dataStream = tRequest.GetRequestStream())
{
dataStream.Write(byteArray, 0, byteArray.Length);
using (WebResponse tResponse = tRequest.GetResponse())
{
using (Stream dataStreamResponse = tResponse.GetResponseStream())
{
using (StreamReader tReader = new StreamReader(dataStreamResponse))
{
String sResponseFromServer = tReader.ReadToEnd();
result.Response = sResponseFromServer;
}
}
}
}
}
catch (Exception ex)
{
result.Successful = false;
result.Response = null;
result.Error = ex;
}
return result;
}
public class AndroidFCMPushNotificationStatus
{
public bool Successful
{
get;
set;
}
public string Response
{
get;
set;
}
public Exception Error
{
get;
set;
}
}
相同的代码对我的Web应用程序正常工作,并且可以准确地发送通知。 但是现在我需要设置CRON(使用控制台应用程序)以每天发送通知。我使用了相同的FCMkey和projectid,但不适用于控制台。
一旦控制台将通知发送到android设备。 android设备显示消息“很遗憾,XXX已停止工作”
在回复中,我收到“ id = 0:1549886497782693%cc7ead1bf9fd7ecd ”。
我不明白那是什么意思。解决该问题的任何帮助或建议都是非常可取的。
谢谢