【发布时间】:2014-05-08 19:42:01
【问题描述】:
我正在我的应用程序中实现UILocalNotification,并且通知按预期传递。据我了解,通知的处理方式如下:
- 当应用未运行,用户点击通知时,应用通过
applicationDidFinishLaunching方法中的选项接收通知。 - 当应用程序处于活动状态时,它会通过
didReceiveLocalNotification方法接收通知。 - 当应用在后台,用户点击通知时,通过
didReceiveLocalNotification方法接收到通知。
但是有一种情况我无法涵盖,那就是当一个通知被触发时,应用程序在后台,只需单击应用程序图标即可激活应用程序(而不是单击通知)。在这种情况下,没有可用的UILocalNotification。但我仍然想知道自上次激活以来通知已被触发,因为该通知在其 userInfo 属性中有一些需要处理的信息。
目前我已经通过检查applicationDidBecomeActive 中的徽章编号 > 0 来“解决”它,但这只是允许我向用户显示一般消息。我希望能够知道是什么通知导致徽章编号更新。有没有办法做到这一点?
【问题讨论】:
-
嗨 NilsH,您最终找到解决方案了吗?
-
不,抱歉。如果不以某种方式自己存储它们,这似乎是不可能的。我只是切换到远程通知。
标签: ios objective-c uilocalnotification