iOS_33_音乐后台播放

本文详细介绍了在appDelegate中的didEnterBackground方法中实现音乐后台播放的三个关键步骤:使用application.beginBackgroundTaskWithExpirationHandler方法让应用在后台运行,通过设置AVAudioSession的类别和状态激活音频会话,以及其他四种常用的音频会话类型。

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

音乐后台播放:三个步骤
在appDelegate中的didEnterBackground方法中实现:

app的beginBackgroundTaskWithExpirationHandler方法

开启后台任务,让程序在后台运行

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
    // 后台播放三步骤之一:让应用在后台运行
    [application beginBackgroundTaskWithExpirationHandler:nil];
}



在Supporting Files目录下的【33_音效-Info.plist】
增加一项【Required background modes】
值为【App plays audio or streams audio/video using AirPlay】


第三、在工具类的初始化方法【

initialize】中,设置音频会话的类型,并激活


+ (void)initialize
{
    // 后台播放,第三步,设置 音频会话类型
    AVAudioSession *session = [AVAudioSession sharedInstance];
    // 类型是:播放和录音
    [session setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
    // 而且要激活 音频会话
    [session setActive:YES error:nil];
}


其他三种常用的音频会话类型是:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值