iOS APP應(yīng)用程序進(jìn)入到后臺 ,不影響正在運(yùn)行的后臺音樂播放
1求橄、在 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool{
}方法中加入如下代碼:
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, error: nil)
AVAudioSession.sharedInstance().setActive(true, error: nil)
Category的種類
AVAudioSessionCategoryAmbient 或 kAudioSessionCategory_AmbientSound
——用于非以語音為主的應(yīng)用,使用這個category的應(yīng)用會隨著靜音鍵和屏幕關(guān)閉而靜音晰奖。并且不會中止其它應(yīng)用播放聲音谈撒,可以和其它自帶應(yīng)用如iPod腥泥,safari等同時播放聲音匾南。注意:該Category無法在后臺播放聲音
AVAudioSessionCategorySoloAmbient 或 kAudioSessionCategory_SoloAmbientSound
——類似于AVAudioSessionCategoryAmbient 不同之處在于它會中止其它應(yīng)用播放聲音。 這個category為默認(rèn)category蛔外。該Category無法在后臺播放聲音
AVAudioSessionCategoryPlayback 或 kAudioSessionCategory_MediaPlayback
——用于以語音為主的應(yīng)用蛆楞,使用這個category的應(yīng)用不會隨著靜音鍵和屏幕關(guān)閉而靜音〖醒幔可在后臺播放聲音
AVAudioSessionCategoryRecord 或 kAudioSessionCategory_RecordAudio
———用于需要錄音的應(yīng)用豹爹,設(shè)置該category后,除了來電鈴聲矛纹,鬧鐘或日歷提醒之外的其它系統(tǒng)聲音都不會被播放臂聋。該Category只提供單純錄音功能。
AVAudioSessionCategoryPlayAndRecord 或 kAudioSessionCategory_PlayAndRecord
——用于既需要播放聲音又需要錄音的應(yīng)用,語音聊天應(yīng)用(如微信)應(yīng)該使用這個category孩等。該Category提供錄音和播放功能艾君。如果你的應(yīng)用需要用到iPhone上的聽筒,該category是你唯一的選擇肄方,在該Category下聲音的默認(rèn)出口為聽筒(在沒有外接設(shè)備的情況下)冰垄。
如果你想檢查你是否設(shè)置聲音的優(yōu)先級成功了,可以用以下的代碼:
NSError *error; BOOL success = [[AVAudioSession sharedInstance]setCategory:AVAudioSessionCategoryAmbient error:&error];
if (!success) { //Handle errorNSLog(@"%@", [error localizedDescription]);
} else { // Yay! It worked! }
backgroundmodes@2x.png
摘錄自:iOS APP應(yīng)用程序進(jìn)入到后臺 权她,不影響正在運(yùn)行的后臺音樂播放