全部产品
云市场

移动推送 iOS :iOS 13 deviceidToken 具体修改代码

更新时间:2019-08-16 10:12:08

  1. # include <arpa/inet.h>
  2. // 将 APNs 返回的 deviceTokenData 转换为标准的 deviceToken String
  3. + (NSString *)translateDeviceToken:(NSData *)deviceTokenData {
  4. if (deviceTokenData == nil || ![deviceTokenData isKindOfClass:[NSData class]]) {
  5. return nil;
  6. }
  7. const unsigned *tokenBytes = [deviceTokenData bytes];
  8. NSString *deviceTokenStr = [NSStringstringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
  9. ntohl(tokenBytes[0]), ntohl(tokenBytes[1]), ntohl(tokenBytes[2]),
  10. ntohl(tokenBytes[3]), ntohl(tokenBytes[4]), ntohl(tokenBytes[5]),
  11. ntohl(tokenBytes[6]), ntohl(tokenBytes[7])];
  12. return deviceTokenStr;
  13. }