類別 | 輸入 | 輸出 | 與ipOD混合 | 遵從靜音 |
AVAudioSessionCategoryAmbient | No | Yes | Yes | Yes |
AVAudioSessionCategorySoloAmbient | No | Yes | No | Yes |
AVAudioSessionCategoryPlayback | No | Yes | No | No |
AVAudioSessionCategoryRecord | Yes | No | No | No |
AVAudioSessionCategoryPlayAndRecord | Yes | Yes | No | No |
+ (UIBackgroundTaskIdentifier)backgroundPlayerID:(UIBackgroundTaskIdentifier)backTaskId{ // 1. 設(shè)置并激活音頻會話類別 AVAudioSession *session = [AVAudioSession sharedInstance]; [session AVAudioSessionCategoryPlayback error:nil]; [session setActive:YES error:nil]; // 2. 允許應(yīng)用程序接收遠(yuǎn)程控制 [[UIapplication sharedApplication] beginReceivingRemoteControlEvents]; // 3. 設(shè)置后臺任務(wù)ID UIBackgroundTaskIdentifier newTaskId = UIBackgroundTaskInvalid; newTaskId = [[UIApplication sharedApplication] beginBackgroundTaskWithExpirationHandler:nil]; if (newTaskId != UIBackgroundTaskInvalid && backTaskId != UIBackgroundTaskInvalid) { [[UIApplication sharedApplication] endBackgroundTask:backTaskId]; } return newTaskId;}
//后臺播放音頻設(shè)置 AVAudioSession *session = [AVAudioSession sharedInstance]; [session setActive:YES error:nil]; [session setCategory:AVAudioSessionCategoryPlayback error:nil]; //讓app支持接受遠(yuǎn)程控制事件 [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
// 后臺播放任務(wù)IdUIBackgroundTaskIdentifier _bgTaskId;// 設(shè)置音頻會話,允許后臺播放_bgTaskId = [SoundTool backgroundPlayerID:_bgTaskId];
作者: 清澈Saup
出處: http://www.companysz.com/qingche/
本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但必須保留此段聲明,且在文章頁面明顯位置給出原文連接。
新聞熱點
疑難解答