今日在使用某App时候,突然发现上拉菜单,程序视频扔在播放,咦!引起了我的兴趣。
首先,列出两个方法,
第一个方法是AppDelegate的代理,当程序进入后台时候调用
- (void)applicationDidEnterBackground:(UIApplication *)application NS_AVAILABLE_IOS(4_0);
第二个方法是,注册系统通知,name是UIApplicationWillResignActiveNotification,当程序释放活跃的时候调用。
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResignActive:) name:UIApplicationWillResignActiveNotification object:nil];
开发者需要实现
- (void)applicationWillResignActive:(UIApplication *)application
下面是常见的几种程序进入后台,或者失去活跃的操作。
1. 点击home键,程序进入后台:先调用 applicationWillResignActive,再调用applicationDidEnterBackground
2. 双击home键,程序进图标入任务管理器:只调用applicationWillResignActive。如果你点击别的程序,那么别的程序进入前台,本App调用applicationDidEnterBackground
3. 上拉,下拉菜单,程序仍在前台:只调用applicationWillResignActive
在【网易新闻】App上看视频的时候,【网易视频】只是对第一种情况进行处理,即暂停视频;而剩余的情况都不做处理,视频继续播放。
这个应该是对用户交互细化,引起我的兴趣。有时候,我只是使用一下上拉快捷菜单做一些简单的开关,比如:打开手电筒、打开wifi、关闭旋转等。不希望后面的视频停止。现在市面上有些App,对这三种情况都是先暂停,前台再恢复,但是视觉上还是会卡一下。
(待完善)
时间: 2024-10-13 17:37:29