2017-02-20 5 views
0

他のアプリからアプリを起動すると、再生が停止します。他のアプリからの音楽の再生がアプリの起動時に停止する

setCategory:AVAudioSessionCategoryAmbientを追加しようとしましたが、FIRSTの起動時に音楽が停止します。音楽を開始してホームボタンを押してアプリに戻ると、音楽は引き続き再生されます。最初の起動に関する問題を回避する方法はありますか?

スニペット私が追加しました:

// make sure music plays while sounds play. 
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil]; 
[[AVAudioSession sharedInstance] setActive:YES error:nil]; 
+0

「AVAudioSessionCategoryAmbient」が適切なものです。私は自分のアプリケーションの1つでそのコードを正確に使用していますが、期待通りに動作します。既に、他のアプリケーションからのオーディオの再生は、アプリケーションの起動時に停止しません。 'setCategory'は成功のためにBOOLを返します。あなたはそれをチェックしようとしましたか、 'error'パラメータにエラーが返されているのを見ていますか? – zpasternack

+0

@zpasternack良いアイデア、私はそれから意味のあるものを得ることができるかどうかを試してみるつもりです。 – Warpzit

答えて

0

は、代わりにこれを試してみてください:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient withOptions:0 error:nil]; 

それともこれ以上の場合は動作しません:

[[AVAudioSession sharedInstance] setActive:NO error:nil]; 
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil]; 
[[AVAudioSession sharedInstance] setActive:YES error:nil]; 

はEDIT:

上記のいずれにも該当しない場合は、おそらく、あなたのユースケースでうまくいけば、AVAudioSessionCategoryOptionMixWithOthersと一緒にフィットする別のカテゴリを設定してみてください。

このセッションのオーディオを他のオーディオアプリのアクティブセッションのオーディオと混在させるかどうかを指定します。

+0

Nopeは機能しませんでした。私はいくつかの音を再生するために使用される静的ライブラリに関連する可能性があるのだろうかと思います。 – Warpzit

+0

@Warpzit Hmm ...あなたが設定した場合、上で言及したことがわかりません。アクティブ:いいえ、現在のオプションで聴覚にアクセスせずに他の音楽の再生を停止することなく、変更を行うことができます。少なくとも、他のフレームワークを無効にして、必ず確認してください。しかし、それがあなたのニーズに合っていて、おそらくあなたのために働くなら、更新された答えをチェックしてください。 –

関連する問題