AudioServicesPlaySystemSound の使用に問題があります。出力がスピーカーを通過する場合、物事はうまく機能します。ただし、ユーザーがヘッドフォンを接続すると、出力はありません。ある種のリスナーを設定して、オーディオがプラグインされたときにヘッドフォンを介して自動的にルーティングされ、そうでない場合はスピーカーを介してルーティングされる簡単な方法はありますか?
次の方法を使用して、短く単純な AIF サウンド サンプルを再生しています。
-(void)playAif:(NSString *)filename {
SystemSoundID soundID;
NSString *path = [[NSBundle mainBundle]
pathForResource:filename ofType:@"aif"];
if (path) { // test for path, to guard against crashes
AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath:path],&soundID);
AudioServicesPlaySystemSound (soundID);
}
}
私は何かが欠けているに違いないことを知っています。これを行うためのセットアップが少しあります。何か案は?