1
我使用AVAudioPlayer製作MP3播放器。我有多個MP3聲音,並希望逐一播放這些聲音。以下是我的應用程序的邏輯:用AVAudioPlayer播放多個聲音(一個接一個)
///// For playing 1st sound
mp3Player = [[AVAudioPlayer alloc] initWithContentsOfURL:url1 error:nil];
[mp3Player prepareToPlay];
[mp3Player play];
///// For playing 2nd sound
mp3Player = nil;
mp3Player = [[AVAudioPlayer alloc] initWithContentsOfURL:url2 error:nil];
[mp3Player prepareToPlay];
[mp3Player play];
///// For playing 3rd sound
mp3Player = nil;
mp3Player = [[AVAudioPlayer alloc] initWithContentsOfURL:url3 error:nil];
[mp3Player prepareToPlay];
[mp3Player play];
etc...
只是想知道:我玩下一個聲音之前無相應的播放器或Alloc AVAudioPlayer。在這個邏輯中是否有任何性能(速度)或內存(泄漏)問題? (我正在使用ARC)。如果是這樣,是否有任何方法可以一次性分配AVAudioPlayer,並接受指向這些聲音的不同URL?提前致謝。
感謝您的鏈接。 Unnati。但是我認爲這些答案的鏈接示例代碼的基本邏輯應該與我的相同:在播放方法中的下一首歌曲之前再次執行alloc AVAudioPlayer,委託-audioPlayerDidFinishPlaying調用該方法。所以對AVAudioPlayer的分配仍然會被多次調用。 – stspb 2013-05-09 05:02:34
thnx它幫助了我 – Mohit 2014-05-12 14:12:37