i构建和具有启用背景模式的构建和应用
此设置导致didReceiveRemoteNotification
被称为每次该应用程序都会获取推送通知,这意味着,如果我在应用程序在后台时收到3个推送通知 - 函数将触发3次,并且当应用将applicationDidBecomeActive
我最大的问题是,没有办法知道用户是否敲击推动系统警报或敲击应用程序图标以将应用程序从背景中带来在用户的操作中,didReceiveRemoteNotification
将发射。
是否有一种方法可以确保用户在SYS警报上窃听?
和此:http://samwize.com/2015/08/07/how-to-the-handle-handle-remote-notification-with-background-mode-enabled/和其他答案似乎没有帮助
For app is background push
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if ( application.applicationState == UIApplicationStateInactive || application.applicationState == UIApplicationStateBackground )
{
//opened from a push notification when the app was on background
}
}
For app is terminate state
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
if (launchOptions != nil) {
// Launched from push notification
NSDictionary *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
}
}