针对此问题,我的做法是在AudioStreamer.h文件新加入一个属性
@PRoperty (nonatomic,strong) NSURL *musicUrl;
和一个单例方法:
+(id)sharedStreamer;
同时在AudioStreamer.m文件中实现单例方法和musicURL的set方法
+(id)sharedStreamer{
static AudioStreamer *streamer = nil;
static dispatch_once_t tocken;
dispatch_once(&tocken, ^{
streamer = [[AudioStreamer alloc] init];
});
return streamer;
}
-(void)setMusicUrl:(NSURL *)musicUrl{
url = musicUrl;
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleInterruptionChangeToState:) name:ASAudiosessionInterruptionOccuredNotification object:nil];
}
这样后在创建streamer对象的时候变可以像下面那样做:
streamer = [AudioStreamer sharedStreamer];
[streamer stop];
streamer.musicUrl = url;
[streamer start];
那么问题解决。。晚安!
新闻热点
疑难解答