在ios 10+中,在AppDelegate.h文件中,我导入UserNotifications并设置UNUserNotificationCenterDelegate,如下所示:
#import <UIKit/UIKit.h>
#import <UserNotifications/UserNotifications.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate, UNUserNotificationCenterDelegate>
然后在AppDelegate.m文件中,我在[[UNUserNotificationCenter currentNotificationCenter] setDelegate:self];
方法中添加didFinishLaunchingWithOptions
。
然后我添加userNotificationCenterhandler,如下所示。
- (void)userNotificationCenter:(UNUserNotificationCenter* )center willPresentNotification:(UNNotification* )notification withCompletionHandler:(void (^)(UNNotificationPresentationOptions options))completionHandler {
completionHandler(UNNotificationPresentationOptionAlert);
}
但是当应用程序处于前台时,没有显示警告:(我错过了什么?
答案 0 :(得分:0)
Apple说: 如果您的应用在前台运行时收到本地或远程通知,则您有责任以特定于应用的方式将信息传递给用户。
当app在前台notification delegate
时被调用。您需要在
application:didReceiveRemoteNotification:fetchCompletionHandler: delegate