这样的问题已被多次询问,但我有一些特定的情况正在发生.
当我的应用程序处于活动状态并且我收到PUSH消息时,我成功地能够解析自定义有效负载等.
但是当我的应用程序在后台并且PUSH到达时,用户必须单击"查看/打开"按钮才能获得didReceiveRemoteNotification被叫,然后didFinishLaunchingWithOptions被调用.
我需要让我的应用程序决定是否必须在后台提示用户使用UIAlert,或者根据某些本地设置禁止推送消息.
任何帮助,将不胜感激,
阅读Apple有关推送通知的文档:
application:didFinishLaunchingWithOptions:方法 application:didReceiveRemoteNotification:方法 所以我的问题是,如果应用程序处于后台状态(它正在运行或暂停),哪个委托被调用?难道application:didFinishLaunchingWithOptions:还是application:didReceiveRemoteNotification:?
请帮帮我,谢谢!
我知道这个话题已经讨论过,但是我一直看到相互矛盾的错误,而且我越来越迷失.
我只是想知道当我的应用程序在后台时会发生什么,并且它会收到推送通知.
我知道:
在前台 - 应用程序:didReceiveRemoteNotification:被调用,没有警报,徽章或声音.
未启动时 - 显示/播放警报,徽章和/或声音,如果用户点击通知的"查看/打开"(操作)按钮,则启动应用程序并调用application:didFinishLaunchingWithOptions:并且通知有效负载为传递,如果用户关闭通知并点击应用程序图标,则会调用相同的方法,但不会传递有关通知的信息.
而在背景 - 这是我困惑的地方.我需要知道在后台运行或暂停是否会产生影响,无论如何调用什么方法以及是否显示/播放警报,徽章和/或声音.
谢谢.