0

我正在使用我的应用程序中的推送通知。但我得到这样的警告: 不兼容的Objective-C类型分配“结构的NSString *”,预期“结构的NSData *”推送通知警告?

其中其在收到警告是代码:

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { 
// Here you send the deviceToken to your server.. 
deviceToken = [[[[deviceToken description] 
       stringByReplacingOccurrencesOfString: @"<" withString: @""] 
       stringByReplacingOccurrencesOfString: @">" withString: @""] 
       stringByReplacingOccurrencesOfString: @" " withString: @""]; 

NSLog(@"Device Token: %@",deviceToken); 
} 

任何人能告诉我为什么我是否得到了这个警告。

感谢

回答

1

你为什么不创建一个单独的NSString称为deviceTokenStr作为deviceToken本身是一个NSData对象,它是导致错误

NSString *deviceTokenStr = [[[[deviceToken description] stringByReplacingOccurrencesOfString:  @"<" withString: @""] stringByReplacingOccurrencesOfString: @">" withString: @""] stringByReplacingOccurrencesOfString: @" " withString: @""]; 

    NSLog(@"Device Token: %@",deviceTokenStr);