我正在使用AVPlayer播放在线mp3流!当我暂停播放器时
[AVPlayer pause];
AVAudioSession *session = [AVAudioSession sharedInstance];
session.delegate = nil;
NSError *error = nil;
[session setActive:NO error:&error];
NSLog([error description]);
我遇到了错误,错误域= NSOSStatusErrorDomain代码= 560030580“操作无法完成。(OSStatus错误560030580。)”
有谁能告诉我为什么以及如何解决它?
非常感谢!!
答案 0 :(得分:4)
我也遇到了这个问题。我用谷歌搜索了这个帖子不止一次。有人说,the forum来自AVAudioSession.h
可以找出错误代码。
就我而言,问题似乎是race condition
问题。它永远不会发生在我的iPhone 5s
上,但通常发生在其他设备上,例如:iPhone6 Plus
。
据我所知,错误代码560030580
表示AVAudioSessionErrorCodeIsBusy
。
从AVAudioSession.h
开始,定义了以下内容。
typedef NS_ENUM(NSInteger, AVAudioSessionErrorCode)
{
AVAudioSessionErrorCodeNone = 0,
AVAudioSessionErrorCodeMediaServicesFailed = 'msrv', /* 0x6D737276, 1836282486 */
AVAudioSessionErrorCodeIsBusy = '!act', /* 0x21616374, 560030580 */
AVAudioSessionErrorCodeIncompatibleCategory = '!cat', /* 0x21636174, 560161140 */
AVAudioSessionErrorCodeCannotInterruptOthers = '!int', /* 0x21696E74, 560557684 */
AVAudioSessionErrorCodeMissingEntitlement = 'ent?', /* 0x656E743F, 1701737535 */
AVAudioSessionErrorCodeSiriIsRecording = 'siri', /* 0x73697269, 1936290409 */
AVAudioSessionErrorCodeCannotStartPlaying = '!pla', /* 0x21706C61, 561015905 */
AVAudioSessionErrorCodeCannotStartRecording = '!rec', /* 0x21726563, 561145187 */
AVAudioSessionErrorCodeBadParam = -50,
AVAudioSessionErrorInsufficientPriority = '!pri', /* 0x21707269, 561017449 */
AVAudioSessionErrorCodeResourceNotAvailable = '!res', /* 0x21726573, 561145203 */
AVAudioSessionErrorCodeUnspecified = 'what' /* 0x77686174, 2003329396 */
} NS_AVAILABLE_IOS(7_0);
答案 1 :(得分:0)
对我来说,这就是答案:与Airplay断开连接。
答案 2 :(得分:0)
根据Apple https://developer.apple.com/documentation/avfoundation/avaudiosession/1616597-setactive:
停用具有运行音频对象的音频会话将停止 它们,停用会话并返回一个 AVAudioSessionErrorCodeIsBusy错误。
据我了解,这意味着您的音频仍在播放,并且您尝试停用该会话-该会话将被激活,但是您会以这种方式注意到这一事实。