检测应用程序处于显示模式(双击主页按钮)[重复]
Posted
技术标签:
【中文标题】检测应用程序处于显示模式(双击主页按钮)[重复]【英文标题】:Detect application is in display mode (double click home button) [duplicate] 【发布时间】:2013-11-01 04:07:16 【问题描述】:我不知道如何称呼这种状态。所以为标题错误道歉。
有没有办法让我检查用户是否要离开我的应用程序。例如,当用户在主屏幕上点击 2 次时,会显示最近打开的应用程序。我想知道这个状态,所以我可以在我的应用上修改一些东西。
我检查了所有委托方法都没有涵盖这一点。 applicationWillResignActive:
& applicationDidEnterBackground:
没有被解雇。
提前致谢。
【问题讨论】:
在这种情况下应该调用applicationWillResignActive:
应用程序委托方法。我刚刚测试了我自己的应用程序,它是。如果用户选择另一个应用程序,则将调用 applicationDidEnterBackground:
委托。这假设用户双击 Home 按钮时正在使用您的应用。
哇,感谢您指出这一点。不知道该调用什么,因此不知道搜索关键字。谢谢一百万。
@rmaddy 用户尚未选择其他应用。用户只需打开多任务切换器。如何知道是否处于这种状态?没有打电话给applicationDidEnterBackground
因为该应用还没有进入后台。
无法知道您的应用为何退出活动状态。可能的原因有很多。
【参考方案1】:
您无法检测到这一点。来自ios App Programming Guide(“应用程序终止”标题):
重要提示: applicationWillTerminate: 方法不会被调用,如果你 应用目前已暂停。
即使您使用 iOS SDK 4 及更高版本开发应用,您仍然必须 准备好在没有任何通知的情况下杀死您的应用程序。这 用户可以使用多任务 UI 显式终止应用程序。此外, 如果内存受到限制,系统可能会从 内存以腾出更多空间。暂停的应用程序不会收到通知 终止,但如果您的应用当前正在后台运行 状态(而不是挂起),系统调用 applicationWillTerminate:您的应用委托的方法。你的应用不能 从此方法请求额外的后台执行时间。
【讨论】:
实际上,有很多应用程序都这样做了。我敢肯定它可以。我知道一些:paypal 和 ynab 应用程序。当用户点击双主页时,他们会隐藏他们的视图。不过这只会影响 iOS7,因为你可以看到其他屏幕。以上是关于检测应用程序处于显示模式(双击主页按钮)[重复]的主要内容,如果未能解决你的问题,请参考以下文章