首页 > 代码库 > iOS AVPlayer 后台播放问题自动停止问题 防止应用被后台挂起方法
iOS AVPlayer 后台播放问题自动停止问题 防止应用被后台挂起方法
iOS AVPlayer 后台播放问题自动停止问题 防止应用被后台挂起方法
2016-09-08 16:16 1597人阅读 评论(0) 收藏 举报
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
目录(?)[+]
1、创建播放器时创建AVAudioSession
[objc] view plain copy
- AVAudioSession *session = [AVAudioSessionsharedInstance];
- [session setCategory:AVAudioSessionCategoryPlaybackerror:nil];
- [session setActive:YES error:nil];
2、在plist文件中添加字段
Required background modes
在这里添加后台播放:
App plays audio or streams audio/video using AirPlay
3、在设备将要挂起app时添加下面代码
[objc] view plain copy
- - (void)applicationWillResignActive:(UIApplication *)application {
- if ([MediaPlayerplayer].playStatus == MediaPlayerPlayStatusPlaying) {
- UIDevice* device = [UIDevicecurrentDevice];
- if ([devicerespondsToSelector:@selector(isMultitaskingSupported)]) {
- if(device.multitaskingSupported) {
- if(device.multitaskingSupported) {
- if ([MediaPlayerplayer].bgTaskId ==UIBackgroundTaskInvalid) {
- [MediaPlayerplayer].bgTaskId = [[UIApplicationsharedApplication]beginBackgroundTaskWithExpirationHandler:NULL];
- }
- }
- }
- }
- }
- }
在设备进入前台时添加下面代码
[objc] view plain copy
- if ([MediaPlayerplayer].bgTaskId !=UIBackgroundTaskInvalid) {
- [[UIApplicationsharedApplication]endBackgroundTask:[MediaPlayerplayer].bgTaskId];
- [MediaPlayerplayer].bgTaskId =UIBackgroundTaskInvalid;
- }
使用这三步基本可以保证在后台的长时间播放问题,且不会因为后台挂起APP导致的播放停止问题。
iOS AVPlayer 后台播放问题自动停止问题 防止应用被后台挂起方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。