Cocoa

iOS 中的推送测试

2021-08-12  本文已影响0人  望穿秋水小作坊

一、如何利用本地推送 模拟 远程推送?

一般情况下,远程推送要经过自己的服务器 -> 推送服务器(比如极光推送) -> 最终才能到手机上。有时候链路太长,并不方便 iOS 开发人员调试,那怎么办呢?

使用说明

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    NSString *tokenStr = [self getHexStringForData:deviceToken];
    NSLog(@"deviceToken:%@",tokenStr);
}
- (NSString *)getHexStringForData:(NSData *)data {
    if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 13) {
        if (![data isKindOfClass:[NSData class]]) {
            return @"";
        }
        NSUInteger len = [data length];
        char *chars = (char *)[data bytes];
        NSMutableString *hexString = [[NSMutableString alloc]init];
        for (NSUInteger i=0; i<len; i++) {
            [hexString appendString:[NSString stringWithFormat:@"%0.2hhx" , chars[i]]];
        }
        return hexString;
    } else {
         NSString *myToken = [[data description] stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]];
        myToken = [myToken stringByReplacingOccurrencesOfString:@" " withString:@""];
        return myToken;
    }
}
上一篇 下一篇

猜你喜欢

热点阅读