1
Почему следующий код не воспроизводит звук? Он возвращает «true» для play(), но я ничего не слышу.AVAudioPlayer.play() не воспроизводит звук
let path = "/Users/account/Music/sound.mp3";
let fileURL = NSURL(fileURLWithPath: path)
var Player = AVAudioPlayer(contentsOfURL:fileURL, error:nil);
Player.delegate = self;
Player.prepareToPlay();
Player.volume = 1.0;
var res = Player.play();
println(res);
Если вместо этого я использую следующий код, я слышу звук.
var inFileURL:CFURL = fileURL!;
var mySound = UnsafeMutablePointer<SystemSoundID>.alloc(sizeof(SystemSoundID));
AudioServicesCreateSystemSoundID(inFileURL, mySound);
AudioServicesPlaySystemSound(mySound.memory)
- OS X Yosemite 10.10.3
- Xcode 6,2
И за решающую разницу в жизни между локальной (автоматической) переменной и свойством см. В моей книге: http://www.apeth.com/swiftBook/ch03.html#_variable_scope_and_lifetime – matt
Я добавил var Player: AVAudioPlayer = AVAudioPlayer(); вне функции, а затем она сработала. –