申明:此为本人学习笔记,若有纰漏错误之处的可留言共同探讨
做个简单的音乐播放器,调用的都是系统分装好的功能。实现起来比较简单。此次Demo主要做的就是将实现音乐播放、音量加减等功能。 UI也比较简单,就一个Label和几个Button而已,贴上图
/*
音乐播放器 简单例子
准备工作: 添加音乐进工程(最好每个都试听一下,确保音乐可以播放)
1.导入系统音频头文件<AVFoundation/AVFoundation.h>
2.创建一个字符串保存音乐路径
3.创建AVAudioPlayer
4.调用播放、暂停方法。
5.自定义方法实现循环下一首歌曲,增加减小音量
*/
代码部分:
#import "ViewController.h"
#import <AVFoundation/AVFoundation.h>
@interface ViewController ()
{
AVAudioPlayer *musicPlayer;
int myClickNum;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
NSString *localPath0 = [[NSBundle mainBundle]pathForResource:@"beijingdejinshanshang" ofType:@"mp3"];
NSURL *fileURL = [NSURL fileURLWithPath:localPath0];
NSLog(@"fileURL%@ ",fileURL);
// localPlayer
musicPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:fileURL error:nil];
myClickNum = 0;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - 播放器方法
- (IBAction)play:(UIButton *)sender
{
[musicPlayer play];
}
- (IBAction)next:(UIButton *)sender
{
NSString *localPath0 = [[NSBundle mainBundle]pathForResource:@"beijingdejinshanshang" ofType:@"mp3"];
NSString *localPath1 = [[NSBundle mainBundle]pathForResource:@"baitianbudongyedehei" ofType:@"mp3"];
NSString *localPath2 = [[NSBundle mainBundle]pathForResource:@"caiyunzhinan" ofType:@"mp3"];
NSURL *fileURL;
switch (myClickNum) {
case 0:
{
fileURL = [NSURL fileURLWithPath:localPath1];
musicPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:fileURL error:nil];
myClickNum+=1;
}
break;
case 1:
{
fileURL = [NSURL fileURLWithPath:localPath2];
musicPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:fileURL error:nil];
myClickNum+=1;
}
break;
case 2:
{
fileURL = [NSURL fileURLWithPath:localPath0];
musicPlayer = [[AVAudioPlayer alloc]initWithContentsOfURL:fileURL error:nil];
myClickNum+=1;
}
break;
case 3:
{
// 网络歌曲
NSURL *netAudioURL = [NSURL URLWithString:@"http://music.baidutt.com/up/kwcacwkd/cpmypk.mp3"];
musicPlayer = [[AVAudioPlayer alloc]initWithData:[NSData dataWithContentsOfURL:netAudioURL] error:nil];
NSLog(@"3");
myClickNum=0;
}
break;
default:
break;
}
[musicPlayer play];
}
- (IBAction)suspend:(UIButton *)sender
{
[musicPlayer stop];
}
- (IBAction)Add:(UIButton *)sender
{
musicPlayer.volume+=1.0;
}
- (IBAction)minus:(UIButton *)sender
{
musicPlayer.volume-=1.0;
}
@end