iOS 8.2 でオーディオを再生する最良の方法は何ですか?
質問する
6078 次
3 に答える
18
最も簡単な方法は、次のように AudioToolbox フレームワークをインポートする#import <AudioToolbox/AudioToolbox.h>
ことです。
NSString *soundPath = [[NSBundle mainBundle] pathForResource:@"Beep" ofType:@"mp3"];
SystemSoundID soundID;
AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:soundPath], &soundID);
AudioServicesPlaySystemSound(soundID);
これは、ビープ音などの非常に短い音に最適ですAVAudioPlayer
。
于 2015-03-11T15:00:27.610 に答える
10
AVAudio を使用 - AudioToolbox を使用してより多くのコードを作成できますが、より柔軟です (将来必要になる場合)。
0.
#import <AVFoundation/AVFoundation.h>
1.
//conform to delegate and make a property
@interface ViewController () <AVAudioPlayerDelegate>
@property (nonatomic, strong) AVAudioPlayer *audioplayer; //the player
@end
2.
//have a lazy property for the player! where you also tell it to load the sound
#define YourSound @"sound.caf"
- (AVAudioPlayer *)audioplayer {
if(!_audioplayer) {
NSURL *audioURL = [[NSBundle mainBundle] URLForResource:YourSound.stringByDeletingPathExtension withExtension:YourSound.pathExtension];
NSData *audioData = [NSData dataWithContentsOfURL:audioURL];
NSError *error = nil;
// assing the audioplayer to a property so ARC won't release it immediately
_audioplayer = [[AVAudioPlayer alloc] initWithData:audioData error:&error];
_audioplayer.delegate = self;
}
return _audioplayer;
}
3.
//play
- (void)action {
[self.audioplayer play];
}
于 2015-03-11T15:04:33.187 に答える