当 iPhone 自动锁定或用户锁定手机时,如何继续在 iPhone 中播放音频?
我已经试过了
session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:NULL];
但这似乎不起作用。
当 iPhone 自动锁定或用户锁定手机时,如何继续在 iPhone 中播放音频?
我已经试过了
session = [AVAudioSession sharedInstance];
[session setCategory:AVAudioSessionCategoryPlayback error:NULL];
但这似乎不起作用。
我终于想出了如何做到这一点!
首先,将这些框架包含到您的项目中:AudioToolbox、CoreAudio、MediaPlayer 和 AVFoundation。将它们全部导入到放置播放器的 viewController 中。分配并开始播放音频后,插入以下代码:
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty (kAudioSessionProperty_AudioCategory, sizeof (sessionCategory), &sessionCategory);
AudioSessionSetActive(true);
最后,转到您的应用程序 Info.plist 文件并添加名为 UIBackgroundModes 的行。新行将是一个数组,将包含 1 个项目,即项目 0。为此,您只需将值设置为音频。你完成了!享受你的背景音频播放应用程序!
这个链接应该有帮助。
您需要阻止应用进入深度睡眠模式:
UInt32 category = kAudioSessionCategory_MediaPlayback;
OSStatus result = AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
sizeof(category), &category);
if (result){
DebugLog(@"ERROR SETTING AUDIO CATEGORY!\n");
}
result = AudioSessionSetActive(true);
if (result) {
DebugLog(@"ERROR SETTING AUDIO SESSION ACTIVE!\n");
}