Tag: 应用程序状态

iOS – 如何知道本地通知是否导致我的应用程序进入前景?

我有我的应用程序委托的代码 application:didReceiveLocalNotification: 方法来显示一个UIAlertView的本地通知,每当我的应用程序在前台。 如果我的应用程序在本地通知到达后的背景中,则用户会看到通知,并可以通过select该应用程序来启动应用程序。 在这种情况下,我的应用程序来到我的应用程序委托的前台 applicationWillEnterForeground: 叫做。 之后,虽然我的didReceiveLocalNotification方法再次被调用,导致一个UIAlertView再次出现。 但实际上用户已经有了这个警报,而应用程序在后台,所以理想情况下,我不想再次显示此警报。 我可以看到,如果一个应用程序是由于本地通知,然后在内部启动 application:didFinishLaunchingWithOptions: 方法可以检查一个键的启动选项 UIApplicationLaunchOptionsLocalNotificationKey 要知道本地通知是否导致您的应用程序启动,但似乎没有这样的方法,当您通过与本地通知进行交互的用户刚回到前台时,找不到这种方法。 检查我的applicationWillEnterForeground方法是否最近被调用似乎是一个hacky方式解决这个问题,或者可能类似于这个问题的答案“ iOS如何判断应用程序正在运行的前景或背景? ”将允许我检查 [UIApplication sharedApplication].applicationState 从我的内部 application:didReceiveLocalNotification: 方法。 希望它会被收到足够早,我的applicationState仍然不会被设置为UIApplicationStateActive在这种情况下。 或者有没有更好的解决scheme呢? 干杯

即使应用程序没有运行,如何使用Geofence?

我正在创build一个位置感知应用程序。 我已经能够创buildgeofences,当我在我的iPhone中testing它时,我注意到当应用程序在前台和后台运行时调用calllback方法-didEnterRegion和-didExitRegion 。 但是,当我杀了应用程序(意思是应用程序状态是“没有运行”)的方法callback没有被调用。 那么,我在这里错过了什么? 有什么configuration,我需要做的? 任何思想家伙? 谢谢!

iOS:如何判断应用程序何时挂起?

我想知道什么时候我的应用程序将被暂停? 在一段时间内没有被激活或被用户终止的状态。 我需要这个,因为我需要closures连接的networking套接字。 我想保持连接,而应用程序处于后台状态,虽然。 我该怎么做呢? 谢谢 编辑:这不是一个重复的问题,其他问题想要的是什么时候应用程序不再活动,我想知道该应用程序已被终止。