私のiPod Touchでは、AVAudioPlayerを使用して短いwavファイルを再生すると、音楽が一時停止することに気がつきました。これは正常ですか?iPhoneのAVAudioPlayerバックグラウンドミュージックを停止する
私はこれを参照することができませんし、どこかに記載されているようです。私のサウンドを演奏している間に音楽を続ける方法はありますか?
私のiPod Touchでは、AVAudioPlayerを使用して短いwavファイルを再生すると、音楽が一時停止することに気がつきました。これは正常ですか?iPhoneのAVAudioPlayerバックグラウンドミュージックを停止する
私はこれを参照することができませんし、どこかに記載されているようです。私のサウンドを演奏している間に音楽を続ける方法はありますか?
注:The AudioSession API has been completely deprecated in iOS 7.0
あなたはもう少し作業を行うことなく、同時にAVAudioPlayerとiPodプレーヤーやMPMusicPlayerまたはMPMoviePlayerを実行することはできません。簡単にしたい場合は、Audio Toolboxのシステムサウンドを使用してください。
あなたには、いくつかの余分な作業をしたい場合は、あなたがAudio Sessionsになります。そのようなので、上のタッチ フィードバック、爆発、およびなどの効果音については
kAudioSessionCategory_UserInterfaceSoundEffects
を。あなたの代わりに を使用する必要がありますkAudioSessionCategory_AmbientSound
カテゴリ、相当。
kAudioSessionCategory_UserInterfaceSoundEffects
カテゴリは、iPhone OS 3.0では非推奨です。
kAudioSessionCategory_AmbientSound
雨などの長時間の音の場合は、車のノイズ 、エンジンノイズなどがあります。また、「再生する」スタイルのアプリケーションの場合は 、 の場合は、ユーザーがiPodオーディオで を再生するようなバーチャルピアノです。このカテゴリを使用すると、 iPodなどの組み込みアプリケーションの のオーディオがオーディオとミックスされます。 の音声は、Ring/Silentスイッチがサイレントに設定されている場合、または 画面がロックされている場合に消音されます。
基本的に、すべてのアプリケーションには、アプリケーションの起動時に取得してパラメータを設定できるシングルトンクラスとしてモデル化されたオーディオセッションが割り当てられます。
のObjective-C:
[[AVAudioSession sharedInstance]setCategory:AVAudioSessionCategoryAmbient error:nil];
スイフト2/3:私は同じ問題を修正方法はapplicationDidFinishLaunching
に配置されたコードの単一のラインを介した応じ
try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryAmbient)
あなたの要求に応じて、システム音を鳴らすだけでは十分ではないかもしれません。例えば、セッションオプションを見てください。 MixWithOthers
struct AVAudioSessionCategoryOptions : OptionSetType {
init(rawValue rawValue: UInt)
static var MixWithOthers: AVAudioSessionCategoryOptions { get }
static var DuckOthers: AVAudioSessionCategoryOptions { get }
static var AllowBluetooth: AVAudioSessionCategoryOptions { get }
static var DefaultToSpeaker: AVAudioSessionCategoryOptions { get }
static var InterruptSpokenAudioAndMixWithOthers: AVAudioSessionCategoryOptions { get }
}
あなたは、あなたのセッションを開始MixWithOthers
オプションを渡し、多分DuckOthers
は(サウンドの再生時にiPodの音量をドロップします)別のオプションです。
ケニーあなたの受け入れられた答えを変更してください。0 :) –