如何停止iOS应用程序中的所有声音,包括其他应用程序的声音

时间:2011-08-05 07:18:37

标签: iphone ios audio

我正在尝试制作一个能够停止iOS设备中所有声音的功能,包括可能在后台运行的其他应用程序的声音。我认为这可以通过音频会话来完成。这是我到目前为止提出的代码:

- (void) setUpAudioSessionExlusive
{
AudioSessionInitialize(NULL, NULL, NULL, NULL);

UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
OSStatus propertySetError = 0;
UInt32 allowMixing = false;
propertySetError = AudioSessionSetProperty(kAudioSessionProperty_OverrideCategoryMixWithOthers, sizeof(allowMixing), &allowMixing);

if (propertySetError)
    NSLog(@"Error setting kAudioSessionProperty_OverrideCategoryMixWithOthers: %ld", propertySetError);

// Activate audio session
OSStatus activationResult = 0;
activationResult = AudioSessionSetActive(true);
if (!activationResult)
{
    NSLog(@"AudioSession is active");
}
}

然而,虽然这会阻止iPod应用程序中的音乐,但它并没有停止我拥有的互联网收音机应用程序的声音。我做错了什么,这是我想做的事情吗?非常感谢!

0 个答案:

没有答案