我有一个应用程序可以接收远程通知并执行后台任务。
我为Background Modes
和Background fetch
设置了Remote notifications
,当应用在前台或后台时,我可以收到通知并正常执行后台获取。
问题是应用程序被终止时 - 通知不会显示,甚至不会显示在通知中心,也不会显示为横幅,警报等。 我知道,如果应用程序被杀死,它将无法执行后台获取。但我认为它至少应该显示通知。
在AppDelegate
我实施了两种方法:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
和
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler
我正在使用此注册通知:
UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound);
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNotificationTypes categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
任何人都可以告诉我,我身边可能有什么不对/错过吗?