启动时停止背景音频

时间:2013-12-27 13:41:53

标签: ios objective-c avaudiosession foreground

我可以通过添加info.plist文件中的设置来制作应用程序,以便在移动到背景时播放音频。

但是,当其他iOS应用程序播放背景音频时,当前应用程序出现在前台时,如何停止其他应用程序调用的背景音频?

1 个答案:

答案 0 :(得分:2)

查看Apple的AVAudioSession类和AVAudioSession编程指南。 这有望引导你朝着正确的方向前进。

要在应用程序启动时停止背景音频,请将音频会话设置为不可混合的类别和模式,然后设置为活动状态。

如果您没有配置音频会话,您的应用程序将获得默认会话,在您的情况下,该会话不是您想要的。

在你的applicationDelegates方法 - (BOOL)应用程序中尝试这个:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

// set audio session category AVAudioSessionCategoryPlayAndRecord with no options
success = [[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayAndRecord error:nil];
if (!success) {
    NSLog(@"setCategoryError");
}

// set audio session mode to default
success = [[AVAudioSession sharedInstance] setMode:AVAudioSessionModeDefault error:nil];
if (!success) {
    NSLog(@"setModeError");
}

// activate audio session
success = [[AVAudioSession sharedInstance] setActive:YES error:nil];
if (!success) {
    NSLog(@"activationError");
}
相关问题