这篇转载自 http://wangqingpeng.info/blog/2013/11/04/huo-qu-and-qu-fen-iossuo-ping-yu-homeshi-jian/
解决了今天一个困扰
前两天写一个APP时遇到一个需求,需要得到iOS的锁屏和Home事件,并分布做出响应。
在iOS7之前通过[[UIApplication sharedApplication] applicationState]
可以分别获取到两个的状态, 锁屏:UIApplicationStateInactive
Home事件:UIApplicationStateBackground
。 这样就可以很方便的区分两个事件了。
但是到了iOS7,这个方法就行不通了。因为两个的事件的状态都变成了UIApplicationStateBackground
。
通过一番搜索,在stackoverflow上找到了答案: iOS7得到UIApplicationStateBackground
状态后,通过区分屏幕的亮度来区分Home与锁屏事件。
当屏幕亮度为0时,为锁屏,否则为Home事件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | |