[英]kAudioSessionProperty_OtherAudioIsPlaying Always Returns True
我尽可能地遵循了许多不同的示例,其中大多数都在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];
}
}
我究竟做错了什么?
我遇到了同样的问题,设法通过在检查属性之前确保AVAudiosession已实例化来解决此问题,如下所示:
AVAudioSession * session = [AVAudioSession sharedInstance];
在尝试检查任何其他音频之前,请确保已发生此情况,然后它应该可以正常工作:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.