关闭

iOS开发之远程推送

432人阅读 评论(0) 收藏 举报
分类:

远程推送

1.远程推送是当app退出前台时,向app发送消息。

2.推送具体过程。


       当app第一次启动时,app会通过苹果的长连接向苹果服务器发送消息。apns会向app返回一个deviceToken(由app的bundleId和手机的UUID经过加密生成)。让后app会把deviceToken上传到服务器。当公司服务器要推送消息时,先把消息和deviceToken(需要推送的设备)推送到苹果apns,再由苹果apns推送到客户端即app。

证书配置

1.进入开发者中心选择证书配置。

测试证书


选择点击下一步


选择你的app的appid,一直点下一步



选择CSR文件(具体导出过程不介绍)


配置完成点击下载双击导入钥匙串。

同样的方法配置发布状态的推送证书。


注册推送通知

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    //推送的类型
    UIUserNotificationType types = UIUserNotificationTypeBadge                                                                                                                      | UIUserNotificationTypeSound | UIUserNotificationTypeAlert ;
    
         UIUserNotificationSettings * setting =  [UIUserNotificationSettings settingsForTypes:types categories:nil];
         [[UIApplication sharedApplication] registerUserNotificationSettings:setting];
    //ios 8之后需要添加这句
    [[UIApplication sharedApplication] registerForRemoteNotifications];
    
    return YES;
}

-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
    //返回的devicetoken
    NSLog(@"deviceToken == %@",deviceToken);
}

将返回的deviceToken发送给服务器。注册完成。

测试远程推送

我用的测试工具是SmartPush-masterhttps://github.com/shaojiankui/SmartPush。注意选择测试环境。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:100905次
    • 积分:1584
    • 等级:
    • 排名:千里之外
    • 原创:62篇
    • 转载:22篇
    • 译文:0篇
    • 评论:9条
    最新评论