didRegisterForRemoteNotificationsWithDeviceToken在旧工程中无法回调,新工程却可以

2016/12 16 08:12
此文章不得转载,如有需要请联系网站管理员。

一度的温暖,一百度的爱情,来自于www.ca788.com的点点滴滴

首先,我可以确定的是,证描述文件、代码、推送配置(push notifications勾选了、background mode —> remote notifications勾选了),苹果服务器那边应该也没有问题(因为新工程正常,市场的app也正常)。

公司的旧工程中是用xcode6创建的,didRegisterForRemoteNotificationsWithDeviceToken 和 didFailToRegisterForRemoteNotificationsWithError死活没有回调。

当我用xcode7.3创建一个新的项目时,把bundle ID和描述文件都改一致,代码也保持一致,didRegisterForRemoteNotificationsWithDeviceToken却可以收到回调。

所以我怀疑是IDE创建工程的原因,可能xcode6和xcode7.3创建新工程时有些参数不一样,但是我定位不出是哪里有问题。

以下是代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
    if ([UIDevice currentDevice].systemVersion.doubleValue >= 8.0) {
        
        UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert|UIUserNotificationTypeBadge|UIUserNotificationTypeSound categories:nil];
        [application registerUserNotificationSettings:settings];
    }else{
        
        [application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound];
    }
    
    return YES;
}

-(void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings {
    [application registerForRemoteNotifications];
}

- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken {
    
    NSLog(@"deviceToken ==== %@", deviceToken);  // 没有回调
    
}

- (void)application:(UIApplication *)application
didFailToRegisterForRemoteNotificationsWithError:(NSError *)error {
    NSLog(@"did Fail To Register For Remote Notifications With Error: %@", error); // 没有回调
}

重申一遍,新建的工程可以收到回调,所以证书和配置和代码都没有问题的。我应该怎么解决问题,已经花了几天时间在各个网站寻找答案,但始终没有找到问题根源所在。求各位支招,感激不尽。

(看完/读完)这篇文章有何感想! 来看看www.ca788.com是怎么评论的吧!

--转载请注明: www.ca788.com#亚洲城ca788手机版官网 » didRegisterForRemoteNotificationsWithDeviceToken在旧工程中无法回调,新工程却可以

发表评论

(必填)