アプリでmp3を再生できるようにするために、できる限りのことを試しました。効果音として再生される 2 ~ 3 秒の mp3 がいくつかありますが、15 秒の mp3 を再生しようとしてもうまくいきません。
NSError *error;
AVAudioPlayer *audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[[NSBundle mainBundle] URLForResource: @"test" withExtension: @"mp3"] error:&error];
if (error) {
NSLog(@"Error creating audio player: %@", [error userInfo]);
} else {
if([audioPlayer play] == FALSE) {
NSLog(@"Fail %@", error);
}
}
NSTimer* myTimer = [NSTimer scheduledTimerWithTimeInterval: 15.0 target: self
selector: @selector(stopMusic) userInfo: nil repeats: NO];
タイマーが関係しているとは思えませんが、念のため含めておきます。基本的に、私のエラーチェックはまったくトリガーされません。正しく再生されているはずですが、音が出ず、エラーも表示されません。
これを機能させるために他にもいくつか試してみましたが、タイマーなしで試しました。まともなガイドが見つかりません。本格的なメディア プレーヤーは必要ありませんUIScreenViewController
。
次のコードも試してみました。これは、再生したい長い MP3 ではなく、短い MP3 でうまく機能します。
NSString *path = [[NSBundle mainBundle] pathForResource:@"bgmusic" ofType:@"mp3"];
NSURL *pathURL = [NSURL fileURLWithPath : path];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)pathURL, &audioEffect);
AudioServicesPlaySystemSound(audioEffect);
助けてください、私はこれをソートするのに何時間も費やしました。Apple は、OS をリリースするたびにオーディオを調整しているようです。