新建一个音乐播放工具类EJMusicTool
- 单例对象
+ (instancetype)shareMusicTool
{
static CZMusicTool *_INTENCE;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
_INTENCE = [[EJMusicTool alloc]init];
});
return _INTENCE;
}
- 对外提供一个方法传入歌曲名播放音乐
- (void)playWithName:(NSString *)name
{
// 文件名为空返回
if (name == nil) {
return;
}
//月半小夜曲.mp3
NSString *path = [[NSBundle mainBundle]pathForResource:name ofType:nil];
if (path == nil) { //找不到这首歌曲
return;
}
//如果正在播放月半小夜曲
if ([self.currentMusicName isEqualToString:name]) {
if (!self.player.isPlaying) {
}else
{
return;
}
}else{
NSURL *url = [NSURL fileURLWithPath:path];
self.player = [[AVAudioPlayer alloc]initWithContentsOfURL:url error:nil] ;
self.currentMusicName = name;
}
[self.player play];
}
- 暂停播放
- (void)pause
{
if (self.player.isPlaying) {
[self.player pause];
}
}
- 播放进度
- (NSTimeInterval)currentTime
{
return self.player.currentTime;
}
- (NSTimeInterval)totalTime
{
return self.player.duration;
}
- (CGFloat)progress
{
//当前播放时间/总时间
return self.player.currentTime/self.player.duration;
}