私はAndroidとiOSアプリケーションでFCMを使用しています。 Firebaseコンソールから何らかの問題なしに両方のプラットフォームに通知を送信できるので、クライアントサイドのコードは正しく動作しています。私のC#コードでは、アンドロイドデバイスに正常に通知を送信できますが、Firebase通知コンソールから直接送られない限り、通知はiPhoneに表示されません。私は何が与えるのか分からない。FirebaseクラウドメッセージングとC#サーバサイドコード
C#サーバー側のコード
try
{
var applicationID = "application_id";
var senderId = "sender_id";
string deviceId = "device_id_of_reciever";
WebRequest tRequest = WebRequest.Create("https://fcm.googleapis.com/fcm/send");
tRequest.Method = "post";
tRequest.ContentType = "application/json";
var data = new
{
to = deviceId,
notification = new
{
body = "This is the message",
title = "This is the title",
icon = "myicon"
}
};
var serializer = new JavaScriptSerializer();
var json = serializer.Serialize(data);
Byte[] byteArray = Encoding.UTF8.GetBytes(json);
tRequest.Headers.Add(string.Format("Authorization: key={0}", applicationID));
tRequest.Headers.Add(string.Format("Sender: id={0}", senderId));
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();
Response.Write(sResponseFromServer);
}
}
}
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
通知は、私のサーバー側のコードをiPhone上で作業していないが、私はFirebaseから良い反応を得ます。
{
"multicast_id": 479608 XXXXXX529964,
"success": 1,
"failure": 0,
"canonical_ids": 0,
"results": [{
"message_id": "0:1467935842135743%a13567c6a13567c6"
}]
}
ご意見やご提案は本当にありがとうございます。
ファイヤーベースから直接来たメッセージは異なって見えます。 gcm.message_id:0:1467938951987907%a13567c6XXXX67c6 %@ [aps:{alert = { body = "これはメッセージです"; title = "これはタイトルです"; }; }、gcm.message_id:0:0:14679XXXX87907%がa13567c6a1XXXXc6] メッセージは、メッセージIDを受け取っ1467939XXXXX5%a13567c6a13567c6 %@ [google.c.a.c_l:why2、google.c.a.e:1、APS = why1 { アラート; }、gcm.ne:1、google.cac_id:50607XXXXXX957125、google.caudt:0、gcm.message_id:0:14679XXXX18215%a13567c6a1XXX7c6、google.cats:146XXXXX32] –
こんにちは、私はdeviceId ? –