我已经尽可能多地遵循了不同的示例,其中大部分都在 Apple 文档中,但我无法找出为什么kAudioSessionProperty_OtherAudioIsPlaying
总是在我的设备上返回正面的原因。
我已经初始化并激活了会话,但是当我的音乐暂停时它仍然返回正值。
这是我的代码:
- (void)viewDidLoad
{
[super viewDidLoad];
AVAudioSession* session = [AVAudioSession sharedInstance];
NSError *activationError = nil;
BOOL success = [session setActive: YES error: &activationError];
if (!success) { NSLog(@"%@", activationError); }
UInt32 otherAudioIsPlaying;
UInt32 propertySize = sizeof (otherAudioIsPlaying);
AudioSessionGetProperty (
kAudioSessionProperty_OtherAudioIsPlaying,
&propertySize,
&otherAudioIsPlaying
);
if (otherAudioIsPlaying) {
[session setCategory: AVAudioSessionCategoryAmbient error: nil];
} else {
[session setCategory: AVAudioSessionCategorySoloAmbient error: nil];
}
}
我究竟做错了什么?