【问题标题】:iOS Silent Push Notification does not receive when app in killed state当应用程序处于终止状态时,iOS 静默推送通知不会收到
【发布时间】:2019-03-04 13:48:12
【问题描述】:

我想在收到静默通知然后生成本地通知时根据某些条件显示显示通知。还可以在 xcode 中启用后台模式并启用远程通知和后台获取。 对于像这样的静默通知消息格式-

{
 "message":{
   "token":"iosdevicetoken",
   "apns": {   
   "payload": {
            "aps": {
                "content-available": 1,
                "category": "GENERAL",
                "priority": "high",
                "token": "randomkey",
                "customkey": "abcs"
            }
        }
    }
  }
}

但当应用程序处于终止状态(从后台状态滑动)时,不会调用下面的委托方法

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
}

【问题讨论】:

  • 推送通知在终止状态下不起作用。

标签: ios objective-c notifications


【解决方案1】:

这是故意的。来自documentationapplication(_:didReceiveRemoteNotification:fetchCompletionHandler:)

此外,如果您启用了远程通知后台模式,系统会启动您的应用(或将其从挂起状态唤醒)并在远程通知到达时将其置于后台状态。但是,如果用户强制退出应用,系统不会自动启动您的应用。在这种情况下,用户必须重新启动您的应用或重启设备,然后系统才会再次尝试自动启动您的应用。

(强调)

iOS 将用户从任务切换器中删除应用程序视为他们不希望应用程序再在后台运行的信号。因此,iOS 不会在后台重新启动应用程序,直到用户明确重新启动它。

【讨论】:

    猜你喜欢
    • 2017-08-01
    • 1970-01-01
    • 2019-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多