iOS13适配-----推送

因为之前很少有文章说ios13适配需要适配推送,上线后发现ios13以上版本的手机收不到推送。超级尴尬,后来找资料才知道原来推送Device Token格式改变了。

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {

    if (@available(iOS 13.0, *)) {

        NSMutableString *deviceTokenString = [NSMutableString string];

        const char *bytes = deviceToken.bytes;

        NSInteger count = deviceToken.length;

        for (int i = 0; i < count; i++) {

            [deviceTokenString appendFormat:@"%02x", bytes[i]&0x000000FF];

        }

    } else {

        NSString *deviceTokenStr =  [[[[deviceToken description]                                       

                                       stringByReplacingOccurrencesOfString:@"<" withString:@""]                                      

                                      stringByReplacingOccurrencesOfString:@">" withString:@""]                                     

                                     stringByReplacingOccurrencesOfString:@" " withString:@""];

    }

//使用第三方注册token   也有可能有些第三方内部已经处理好了,只需要更新sdk就好了。我使用的事云信,之前没更新,后来更新sdk就好了。

}

你可能感兴趣的:(iOS13适配-----推送)