IOS推送通知错误

时间:2013-03-28 16:51:55

标签: ios objective-c cordova

我已在AppDelegate.m文件中为我的phonegap应用启用了推送通知。我正在使用的代码行来自视频教程,因为我真的不知道OBJ-C,它给了我一个格式字符串问题。这是代码和错误。

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
    NSString *deviceTokenString = [NSString stringWithFormat:@"%@", deviceToken];
    NSLog(deviceTokenString);}

格式不是字符串文字(有潜在危险)

了解Javascript,我有点理解字符串字面意思,但我不知道如何解决它。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

如果错误出现在NSLog行上,那么我认为它指的是格式字符串 - NSLog的第一个参数,它告诉它您想要输出的字符串(可能带有替换标记) - 是一个变量,而不是字符串文字。您可以尝试:

NSLog(@"%@", deviceToken);

或者如果您在其他地方使用deviceTokenString并希望保留该变量,则可以执行以下操作:

NSLog(@"%@", deviceTokenString);

答案 1 :(得分:1)

如果您想要查看设备令牌已注册,那么您真正需要的是:

NSLog(@"My token is: %@", deviceToken);

这将为您提供设备令牌信息。删除字符串文字,因为您正在将字符串转换为字符串。没有必要这样做。