AudioToolBox を使用して小さな .wav ファイルを再生しています。
AudioServicesPlaySystemSound (soundFileObject);
しかし、時々再生されないことがあります。
理由は何ですか?
AudioToolBox を使用して小さな .wav ファイルを再生しています。
AudioServicesPlaySystemSound (soundFileObject);
しかし、時々再生されないことがあります。
理由は何ですか?
シミュレーターを使用している場合は、[システム設定] → [サウンド] で、[ユーザー インターフェイスのサウンド効果を再生する] がオフになっていないことを確認してください。デバイスを使用している場合は、呼び出し音スイッチがサイレントに設定されていないことを確認してください。
もしかしてこの問題?AudioServicesDisposeSystemSoundID()
再生前にサウンドワークを停止します。
user1056521 の回答に基づいて、次のコードを使用します。
AudioServicesPlaySystemSoundWithCompletion(soundID, ^{
AudioServicesDisposeSystemSoundID(soundID);
});
wheresoundID
はSystemSoundID
を呼び出したときに取得した値ですAudioServicesCreateSystemSoundID()
。
完了ブロックは、サウンドが破棄される前に再生され、再生が完了したことを保証します。
システム環境設定 → サウンド → [x] ユーザー インターフェイス サウンドを再生 — このチェックボックスも役に立ち、AudioServicesPlaySystemSound(_) の問題を解決しました。ただし、サンプルの Apple Xcode プロジェクト「SysSound」は、このボックスをチェックしなくても問題なく動作したことは注目に値します。独自のアプリをゼロから作成するために Xcode 4.4.1 を使用しています。古い Xcode ツールと新しい Xcode ツールで作成されたプロジェクトに違いはありますか?
デバイスで、設定に移動し、[サウンド] -> [着信音とアラート] で音量を上げます