4

我在 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);
}
4

2 回答 2

5

刚刚在 Google 上搜索了“ios7 推送通知不起作用”,因为您的问题只是我知道的第三个问题。这不是你的错,而是苹果的错。用户需要将他们的手机连接到 iTunes 才能接收推送。有时硬恢复出厂设置,有时只是关闭设备。

  • iOSX.0 是一个“来测试它”
  • iOSX.1 是“我们试图修复一些错误,基于你的火焰”
  • iOSX.2 稳定版,你可以自由开发,反正3个月后我们有下一个X.0版本:)
于 2013-10-17T18:05:22.377 回答
0

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

于 2013-12-31T04:57:08.880 回答