推送通知在iOS7中不起作用,但它们适用于iOS6

时间:2013-10-12 20:52:50

标签: ios ios6 ios7 apple-push-notifications

我在iOS7中遇到推送通知问题。

我开发了iOS6应用程序,推送通知效果非常好。但是,当我将该应用程序放在iOS7设备中时,它不会运行。

但是一件非常奇怪的事情发生了。如果我使用开发键,我的iOS7设备可以接收推送,但是使用生产键,它不能。

我可以获取我的devide令牌但是它无法接收任何内容。

有什么想法吗?

这是我的代码:

Appdelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // PUSH-CODE
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
    ....
}

// PUSH-CODE
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{    
    NSString *token = [[deviceToken description] stringByTrimmingCharactersInSet:      [NSCharacterSet characterSetWithCharactersInString:@"<>"]];
    token = [token stringByReplacingOccurrencesOfString:@" " withString:@""];
    NSLog(@"Token: %@", token);

    [[NSUserDefaults standardUserDefaults] setObject:token forKey:@"deviceToken"];
    [[NSUserDefaults standardUserDefaults] synchronize];
}

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
    NSLog(@"Failed to get token, error: %@", error);
}

2 个答案:

答案 0 :(得分:5)

谷歌搜索“ios7推送通知无法正常工作”,因为您的问题只是我知道已经回复的第3个问题。这不是你的错,而是Apple的错。用户需要将手机连接到iTunes以接收推送。有时硬盘重置,有时只需关闭设备。

  • iOSX.0是“来测试它”
  • iOSX.1是“我们试图根据您的火焰修复一些错误”
  • iOSX.2稳定,你可以自由开发,无论如何在3个月内我们有下一个X.0版本:))

答案 1 :(得分:0)

我通过在推送中心更改应用程序的推送设置来解决此问题。然后关闭再打开