Iphone 4 sdk - 如何确定 applicationWillEnterForeground 是不是因通知而被触发?
Posted
技术标签:
【中文标题】Iphone 4 sdk - 如何确定 applicationWillEnterForeground 是不是因通知而被触发?【英文标题】:Iphone 4 sdk - How can I find out if applicationWillEnterForeground was triggered due to a notification?Iphone 4 sdk - 如何确定 applicationWillEnterForeground 是否因通知而被触发? 【发布时间】:2010-08-16 23:17:41 【问题描述】:我将通知系统用作警报机制。如果应用程序关闭或在后台,当通知进入时,iphone 会提醒用户。如果应用程序正在运行并且在前台,我想显示与关闭时相同的警报视图。我无法让它适用于应用程序从后台转换到前台的情况。如果转换是由于通知引起的,或者如果用户单击启动图标,我最终会看到两次警报。
有没有办法知道转换是否是由于用户点击启动图标的通知?
谢谢。
【问题讨论】:
【参考方案1】:This question provides the answer。
具体来说,在 didReceiveRemoteNotification 方法中,您可以检查应用程序的状态。 UIApplicationStateActive 表示它在前台,因此您需要显示警报。否则 Iphone 将处理警报:
UIApplicationState state = [application applicationState];
if (state == UIApplicationStateActive)
// Show the alert
【讨论】:
以上是关于Iphone 4 sdk - 如何确定 applicationWillEnterForeground 是不是因通知而被触发?的主要内容,如果未能解决你的问题,请参考以下文章
如何提交在 iPhone OS 3 和 iPhone SDK 4 上运行的应用程序版本?
如何提交在iPhone OS 3和iPhone SDK 4上运行的应用程序版本?