2014-09-28 34 views
3

据我所知,现在有两种方法的应用可以进入后台:如何识别应用程序进入后台的方式?

1)用户按下home键

2)该应用程序已经离开了,而没有来自用户的任何动作和设备睡着了

这两个结果在一个 - applicationDidEnterBackground方法被调用,并且应用程序状态变为UIApplicationState.Background。那么我怎么知道这是怎么发生的?我知道这是可能的,因为我有一个应用程序在我眼前,根据用户是否按下home按钮采取不同的操作。任何想法,家伙?

+1

问题的答案(或任何与之相关的问题)对你有帮助吗? http://stackoverflow.com/questions/19595928/differentiate-between-screen-lock-and-home-button-press-on-ios7 – 2014-09-28 10:58:08

+0

@RüdigerHanke它似乎是有益的,我会试试看,谢谢 – 2014-09-28 11:02:41

回答

1

据我所知(相信我,我试过),没有正式的公开API允许你这样做。但是,我发现这个GitHub repo,你应该特别注意的文件是app delegate implementation file

回购说:

这个项目介绍了如何当用户按下主页按钮退出应用程序检测,当他们按下锁定按钮把你的应用程序进入后台。

它利用CSNotificationCenter来检测达尔文通知。

This user已回答了有关堆栈溢出两个问题与此相关的是,回购似乎是基于:

Differentiate between screen lock and home button press on iOS7

How to differentiate between screen lock and home button press on iOS5?

老实说,我不知道,如果苹果将拒绝或者接受这个实现。如果最终以某种方式使用它,请告诉我。我也相信这是iOS 7及以上。

相关问题