【发布时间】:2017-07-11 03:55:36
【问题描述】:
我正在尝试在 VS C# Web 项目中使用以下编码向 iOS 设备发送推送通知。
实际上下面的编码没有任何错误,但我最终没有在我的设备上收到任何通知,有人知道吗?谢谢。
static void Main(string[] args)
{
var config = new ApnsConfiguration(ApnsConfiguration.ApnsServerEnvironment.Sandbox, @"D:\Share\Certificates_Prod.p12", "");
// Create a new broker
var apnsBroker = new ApnsServiceBroker(config);
// Wire up events
apnsBroker.OnNotificationFailed += (notification, aggregateEx) => {
aggregateEx.Handle(ex => {
// See what kind of exception it was to further diagnose
if (ex is ApnsNotificationException)
{
var notificationException = (ApnsNotificationException)ex;
// Deal with the failed notification
var apnsNotification = notificationException.Notification;
var statusCode = notificationException.ErrorStatusCode;
Console.WriteLine($"Apple Notification Failed: ID={apnsNotification.Identifier}, Code={statusCode}");
}
else
{
// Inner exception might hold more useful information like an ApnsConnectionException
Console.WriteLine($"Apple Notification Failed for some unknown reason : {ex.InnerException}");
}
// Mark it as handled
return true;
});
};
apnsBroker.OnNotificationSucceeded += (notification) => {
Console.WriteLine("Apple Notification Sent!");
};
// Start the broker
apnsBroker.Start();
apnsBroker.QueueNotification(new ApnsNotification
{
DeviceToken = "58f0f386003a4b7be..................................",
Payload = JObject.Parse("{\"aps\":{\"badge\":7}}")
});
// Stop the broker, wait for it to finish
// This isn't done after every message, but after you're
// done with the broker
apnsBroker.Stop();
}
【问题讨论】:
-
你有什么问题?是否没有响应阅读以确认您的消息已发送?还有
int[] HexValue = new int[] {0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0A, 0x0B, 0....是什么0x00为什么这么多? -
现在我没有收到任何通知,您对 HexStringToByteArray 函数有什么建议吗?
-
是的,我在我的回答中发布了它
-
谢谢~~我试过了还是不行。
-
您创建了一个开发者帐户并注册了您的应用程序正确吗?还有你使用旧格式的原因吗?
标签: c# push-notification certificate apple-push-notifications pushsharp