ios开发之消息推送(以信鸽推送为例)

这一次的任务是实现消息推送。

我只介绍一下我自己写的部分,就是把推送集成到项目中去。

1.注册推送

由于ios8的推送跟ios7及以下的不一样,所以需要加判断来注册消息推送。

#if __IPHONE_OS_VERSION_MAX_ALLOWED >= _IPHONE80_
            
            float sysVer = [[[UIDevice currentDevice] systemVersion] floatValue];
            if(sysVer < 8){
                [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];

            }
            else{
                [self registerPushForIOS8];
            }
#else
	    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound)];
#endif
 
  
其实信鸽推送的文档写得也是相对清晰的,就是他给的代码片我们不清楚应该放在哪里。

这一段代码就放在

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

[XGPush handleLaunching:launchOptions];
    //注册推送



2.设置推送信息

[XGPush startApp:2200167126 appKey:@"I6Q481JJSY1H"];

-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
    NSString *device_id =[NSString stringWithFormat:@"%@",deviceToken];
    [XGPush setAccount:device_id];}
向信鸽推送提供一个devicetoken也是非常重要的,到后面的指向推送是有必要的。

NSString * deviceTokenStr = [XGPush registerDevice:deviceToken successCallback:successBlock errorCallback:errorBlock];
这样下来也算是成功地设置了推送信息。

接下来尝试一下推送测试,你就会发现,推送已经成功啦!

你可能感兴趣的:(ios开发之消息推送(以信鸽推送为例))