我想用AVPlayer播放远程mp3。我无法使它工作,我看不出它为什么不起作用的原因。代码:
NSString *urlstr=@"..some link to a mp3"
NSURL *url=[NSURL URLWithString:urlstr];
self.player = [[[AVPlayer alloc] initWithURL:url] retain];
[player play];
该链接有效。如果我将它加载到webView中,它会立即播放。 请帮忙。
答案 0 :(得分:9)
我已经找到了解决方案。请尝试以下代码:
NSString *urlstr=@"http://www.3rdeyelab.com/mp3/mp3/tailtoddle_lo.mp3"
NSURL *url=[NSURL URLWithString:urlstr];
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];
player = [[AVPlayer playerWithPlayerItem:playerItem] retain];
[player play];
player.actionAtItemEnd = AVPlayerActionAtItemEndNone;
希望它对你有用!!!
答案 1 :(得分:1)
如果您使用本地链接作为网址,那么您应该使用fileURLWithPath
方法启动网址:
NSURL *url = [NSURL fileURLWithPath:urlstr];
答案 2 :(得分:0)
无论URL是本地的还是远程的,NSURLConnection类都应该在涉及到URL时始终使用。它是加载AVPlayerItem或AVAsset的唯一线程安全,非侵入性方法。请记住:您的应用与其他应用共享iPhone;并且,这是负责任的insodoing的方式。