2013-03-28 167 views
0

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

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

格式不是字符串常量(潜在的危险)

知的Javascript,我有点明白他们的意思字符串字面意思,但我不知道如何解决它。有任何想法吗?

回答

3

如果错误出现在你的NSLog行,那么我认为它指的是一个事实,即格式字符串 - 第一个参数NSLog,告诉它你要输出的字符串(可能与替换标记) - 是一个变量,而不是字符串文字。你可能会改为尝试:

NSLog(@"%@", deviceToken); 

,或者如果您使用deviceTokenString其他地方要保留变量,你可以这样做:

NSLog(@"%@", deviceTokenString); 
1

您真正需要的是这样的,如果你想看到的是,设备令牌已注册:

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

这会给你设备令牌信息。摆脱字符串文字,因为您正在将字符串转换为字符串。没有真正的需要这样做。