2012-05-03 20 views
0

在我的(iPhone)应用程序中,我记录了应用程序处于活动状态的时间。如果超过特定值(比如说15分钟),那么登录视图将以警报视图呈现给用户。如果应用程序在后台驻留的时间太长,这种行为是相似的。然后,警报视图将在应用程序再次变为活动状态时呈现给用户。如果应用程序长时间处于背景中,则UIAlertView不显示

但问题是当应用程序在后台很长时间后应用程序又变为活动状态AlertView未向用户显示。我正在使用NSNotifications来通知会话是否超时。

基本流程是这样的

启动应用程序 - >把应用为背景 - > applicationDidBecomeActive: - >检查会话是否已经超时 - >显示登录查看 - >发表注销通知

接收机将显示alertview。我在应用程序委托以及loginview中接收逻辑。但是在这两种情况下,alertview都不会显示它是否长时间处于后台。

我的问题是我可以通过一些延迟收到通知吗?我想在登录视图出现后收到它。

回答

1

接收通知是您的应用程序的委托方法,它将接收它的实现位置。但您可以设置不同的标志来检查是否激活应用程序。

例如在应用程序将resigactive

设置一个标志isActive =无;

并在接收通知设置一个标志hasReceivedNotification = YES 检查isActive ; 和存储数据到某处

和应用也变得活跃aplication 检查是否是活跃的,并接收远程通知 设置一个第三标志shouldShowAlertOnLoginView = YES; //通知数据是在情况下,以显示

并在loginview检查appDelegate.shouldShowAlertOnLoginView == YES

然后显示用数据

警报
相关问题