首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >推送通知应用后台iOS 9 swift

推送通知应用后台iOS 9 swift
EN

Stack Overflow用户
提问于 2016-11-21 13:58:15
回答 1查看 1K关注 0票数 2

我有一个同时适用于iOS 10和iOS 9的应用程序,我必须管理远程推送通知:

对于iOS 10,我使用UNUserNotificationCenter这样管理它:

代码语言:javascript
复制
 @available(iOS 10.0, *)
    func userNotificationCenter(_ center: UNUserNotificationCenter,  willPresent notification: UNNotification, withCompletionHandler   completionHandler: @escaping (_ options:   UNNotificationPresentationOptions) -> Void) {
        print("Foreground push notification")


    }

    @available(iOS 10.0, *)
    func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {

       print("Background push notification")

   }

对于iOS 9,只有当应用程序在前台时,我才能使用以下方法管理已到达的推送通知:

代码语言:javascript
复制
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any]) {

       print("arrived push notification in foreground for iOS 9")
    }

但是当app在后台时,这个方法不会执行,我也不能管理新的推送通知。你能帮帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2016-11-21 14:20:57

苹果已经对这些通知设置了限制...当应用程序在后台时,应用程序的任何块或函数都不能执行...例如,任何第三方警报应用程序都会基于通知触发警报,一旦点击通知,应用程序就会启动,并进入功能didreceivenotification...而Android可以显示,占据整个屏幕来打瞌睡或解除警报。当你在你的应用程序内部时,苹果给了你所有你想做的事情,但当你在后台或应用程序被杀死时,没有函数或块可以执行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40713660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档