.net平台推送ios消息的实现方法
本文实例讲述了.net平台推送ios消息的实现方法。分享给大家供大家参考。
具体实现步骤如下:
1、ios应用程序中允许向客户推送消息
2、需要有苹果的证书以及密码(怎么获取,网上搜一下,需要交费的)
3、iphone手机一部,安装了该ios应用程序
4、.net项目中引用PushSharp.Apple.dll,PushSharp.Core.dll(这两个文件在网上搜一下,有源码的)
5、开始写代码,定义全局的对象PushBrokerpusher=newPushBroker();
6、注册方法:
protectedvoidstartApp() { pusher.RegisterAppleService(newApplePushChannelSettings(File.ReadAllBytes(CertificatePath),CertificatePassword)); pusher.OnDeviceSubscriptionChanged+=pusher_OnDeviceSubscriptionChanged; pusher.OnDeviceSubscriptionExpired+=pusher_OnDeviceSubscriptionExpired; pusher.OnNotificationSent+=pusher_OnNotificationSent; pusher.OnNotificationFailed+=pusher_OnNotificationFailed;
} staticvoidpusher_OnNotificationFailed(objectsender,INotificationnotification,Exceptionerror) { varn=(AppleNotification)notification; //error.Message...获取推送出错的信息 Log.Error("推送出错的信息",error); }
staticvoidpusher_OnNotificationSent(objectsender,INotificationnotification) { //消息推送成功后 varn=(AppleNotification)notification; //n.Payload.Alert.Body 获取推送的消息内容... Log.Error("推送内容"+n.Payload.Alert.Body); }
staticvoidpusher_OnDeviceSubscriptionExpired(objectsender,stringexpiredSubscriptionId,DateTimeexpirationDateUtc,INotificationnotification) { //从数据库删除过期的expiredSubscriptionId }
staticvoidpusher_OnDeviceSubscriptionChanged(objectsender,stringoldSubscriptionId,stringnewSubscriptionId,INotificationnotification) { //把数据库中的oldSubscriptionId更新为newSubscriptionId }