iPhone开发--AVAudionPlayer支持后台播放

本文详细介绍了如何使用AVAudioPlayer在iOS应用后台播放音频文件,并通过修改plist文件实现背景模式支持。通过加入AVAudioSession配置和初始化AVAudioPlayer实例,确保应用能够在后台播放音频。实践步骤包括设置音频会话类别、激活会话、开始接收远程控制事件及播放音频。最终通过调整plist文件中的requirebackgroundmodes属性,使应用具备在后台播放音频的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚才遇到了个不大不小的问题,就是AVAudionPlayer如何在后台播放音频文件。网上查找方法,最后解决,方法整理如下:

1.需要加入AVaudionSession的代码,总体如下,各位可以抽减掉初始化的代码。

- (void)viewDidLoad
{
    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"in-the-storm" ofType:@"mp3"]];

    AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];

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

    [audioPlayer play];

    [super viewDidLoad];
}
加入如上的代码后,把程序放到后台还是会自动消失声音,于是找到如下的第二步操作。

2.修改plist文件。

在plist文件中新增 Require background modes栏位,并填入内容为audio.

经过以上两步的操作,大功告成。

参考文献:

http://stackoverflow.com/questions/7619794/play-music-in-background-in-iphone-using-avaudioplayer

http://www.cocoachina.com/bbs/simple/?t41975.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值