您的位置:首页 > 移动开发 > IOS开发

ios后台长时间运行的选择策略及注意事项

2016-04-05 13:41 405 查看

概述

本篇文章是介绍ios程序的后台长时间运行的策略的选择。如果想了解后台运行的基本原理,请查看上一篇博文/article/9945968.html

一、音频播放

当应用被设置为是一个音频播放的应用的时候,它就可以在后台持续运行。但是这种类型的应用存在一些限制:

1.audio session不能被限制

2.要另一个程序使用kAudioSessionCatgory_RecordAndPlay(如Skype)或者kAudioSession_SoloAbientSound,那么本程序会被立即打断

3.如果你的app确实为用户播放音频,你应用可以使用音频模式。如果你尝试着用这个模式来搞一个“静默”音频来让app一直在后台运行的话,苹果将会拒绝你的app上架。

下面我们将创建一个音频播放的app:

注意:只是在app退出的时候循环播放一个音频

1.设置应用的模式为音频播放



2.导入AVFoundation框架,书写循环播放音频的代码

_audioSession = [AVAudioSession sharedInstance];
[_audioSession setActive:YES error:nil];
[_audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

NSString *musciPath = [[NSBundle mainBundle] pathForResource:@"Hello_backrun" ofType:@"mp3"];
NSURL *url = [[NSURL alloc] initFileURLWithPath:musciPath];

// 创建播放器
_player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
[_player prepareToPlay];
[_player setVolume:1];
_player.numberOfLoops = -1;
[_player play];


具体代码下载地址:http://download.csdn.net/detail/smiling8866/9481574
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: