2016-06-30 17 views
5

私はPushSharp 4.0.10、MVC 4 with c#
を使用しています。ApnsブローカのOnNotificationFailedイベントでConnectionError例外が発生します。
この例外は、証明書(.p12)ファイルの変更後に突然発生しました。この変更の前にうまくいきました。
このエラーのトラブルシューティング方法を教えてください。コンストラクタをapnsconfiguration、または他のvalidateIsApnsCertificate(ブール値)パラメータを削除するだけで最初の2つのパラメータを渡すことPushSharp Apns通知エラー: 'ConnectionError'

var certificate = System.IO.File.ReadAllBytes(System.Web.Hosting.HostingEnvironment.MapPath("~/Content/Mobile/consumer_dev.p12")); 

var config = new ApnsConfiguration(ApnsConfiguration.ApnsServerEnvironment.Sandbox, certificate, "", true); 

var apnsBroker = new ApnsServiceBroker(config); 

apnsBroker.OnNotificationFailed += (notification, aggregateEx) => { 
    aggregateEx.Handle (ex => { 
     if (ex is ApnsNotificationException) { 
      var notificationException = (ApnsNotificationException)ex; 
      var apnsNotification = notificationException.Notification; 
      var statusCode = notificationException.ErrorStatusCode; 

      Debug.WriteLine(apnsNotification.Identifier + ", " + statusCode); 
     } else { 
      Debug.WriteLine(ex.InnerException); 
     } 
     return true; 
    }); 
}; 

apnsBroker.OnNotificationSucceeded += (notification) => { 
    Debug.WriteLine("Apple Notification Sent!"); 
}; 

apnsBroker.Start(); 

foreach (var deviceToken in to) 
{ 
    apnsBroker.QueueNotification(new ApnsNotification 
    { 
     DeviceToken = deviceToken, 
     Payload = JObject.Parse("{\"aps\":" + aps.ToString().Replace('=', ':') + "}") 
    }); 
} 

apnsBroker.Stop(); 

答えて

0

してみてください。 最初の3つのパラメータはうまくいきました。

var config = new ApnsConfiguration(ApnsConfiguration.ApnsServerEnvironment.Production, appleCert, P12Password); 
+0

私は同じ問題を抱えています。これは私にとってはうまくいきませんでした。 – Angel

+0

解決策を見つけましたか? – user3151766

1

このエラーは、使用した証明書がプッシュ通知を有効にしていないためです。

Apple IDから有効にしてから、新しい証明書(.12)とプロビジョニングプロファイルを作成する必要があります。

新しい証明書で試してください。エラーが解決されます。

関連する問題