Apns-csharp certificate issue

I am trying to use the apns-csharp library to send push notifications from .NET, I created a certificate on the Apple Provision Portal, downloaded it and converted it to p12 format when I try to download it with the code:

private ActionResult SendAlertPushNotification(string appId, string notificationContent, bool useSandBox)
        {
            NotificationService notificationService = new NotificationService(useSandBox,ApplicationsRepository.GetAPNSCertificateForApplication(appId,useSandBox),"123",1);
            notificationService.ReconnectDelay = 2000;
            notificationService.Error += new NotificationService.OnError(service_Error);
            notificationService.NotificationTooLong += new NotificationService.OnNotificationTooLong(service_NotificationTooLong);

            notificationService.BadDeviceToken += new NotificationService.OnBadDeviceToken(service_BadDeviceToken);
            notificationService.NotificationFailed += new NotificationService.OnNotificationFailed(service_NotificationFailed);
            notificationService.NotificationSuccess += new NotificationService.OnNotificationSuccess(service_NotificationSuccess);
            notificationService.Connecting += new NotificationService.OnConnecting(service_Connecting);
            notificationService.Connected += new NotificationService.OnConnected(service_Connected);
            notificationService.Disconnected += new NotificationService.OnDisconnected(service_Disconnected);
            var devices = ApplicationsRepository.GetPushClientDevicesID(appId);
            foreach (var token in devices)
            {
                var notification = new Notification(token);
                notification.Payload.Alert.Body = notificationContent;
                notification.Payload.Sound = "default";
                notification.Payload.Badge = 1;
                //Queue the notification to be sent
                if (notificationService.QueueNotification(notification))
                    Debug.WriteLine("Notification Queued!");
                else
                    Debug.WriteLine("Notification Failed to be Queued!");
            }
            notificationService.Close();
            ViewData["app"] = ApplicationsRepository.GetApplicationByAppId(appId);
            ViewData["count"] = devices.Count;
            return View("SendSuccess");
        }

When I try to upload a certificate, I get an internal error. If I use the original certificate in .cer format, I get no exceptions, but nothing happens on APNS servers. Has anyone encountered this issue?

+3
source share
1 answer

Make sure you export the correct certificate. I recently encountered a similar problem, only to find that I exported the wrong one.

OSX Keychain , Push- iPhone Developer , - apn_developer_identity.cer. , / Keychain, .

, Keychain , . , / .

Ctrl + . . . .p12. , .

PKCS12

, , , "", , .

+2

Source: https://habr.com/ru/post/1770019/


All Articles