系统定义了如下三种状态:
可通过如下获取到
UIApplicationState state = [[UIApplication sharedApplication] applicationState];
三种状态
typedef NS_ENUM(NSInteger, UIApplicationState) {
UIApplicationStateActive,
UIApplicationStateInactive,
UIApplicationStateBackground
} API_AVAILABLE(ios(4.0));
1. UIApplicationStateActive
这个就很明确:APP处于前台运行,即无任何遮挡的手机屏幕显示APP内容页
2. UIApplicationStateInactive
这个状态就很多情况,基本可以概括成APP不在屏幕最上方展示了,但只不过被遮挡了一层系统的行为内容;
一般如下几种情况
- 下拉状态栏,查看通知或者控制中心时候
- 上搓屏幕底部bar,APP缩小为卡片排列时
- 弹窗系统弹窗时
3. UIApplicationStateBackground
这种情况,是APP被其他应用挤到后台或者主动退到后台;
- 用户主动退到系统桌面
- 用户主动搓到其他应用
- 用户点击通知跳转到其他应用