//ViewController.m
//Day12_1_SystemAudio
//本地音频播放,不能播第一首歌.(导入两个音乐,拖到项目,选copy)
//加一个按钮,连线,加一个方法playMusic:
#import"ViewController.h"
@importAudioToolbox;
/*6.16amDay12_1_SystemAudio
最简单的音频播放引入:@import AudioToolbox; (有局限性,有缺点!)//@import是Xcode7的特性,不需要特殊引入系统类库在#import
1.可以播放系统声音(需要真机,模拟器没有系统声音),系统自带的声音.
2.可以让手机震动(需要真机,必须是静音模式时)
3.只能播放30秒以内长度的声音./不是30就是40秒.
4.不能控制播放进度.
5.没有循环播放,没有立体声功能.
6.调用以后会立即执行
7.支持caf aif wav mp3格式
好处:底层,节省系统资源.
作用:如下
使用场景:一些剪短的声音提示(闹钟,微信,来视频/音频提示,酷狗的键盘声..)
*/
@interfaceViewController()
@end
@implementationViewController
- (IBAction)playMusic:(id)sender {
//第二步:播放系统声音,需要真机(播放的方法) 1200对应的声音
AudioServicesPlaySystemSound(1200);
//第八步:静音震动
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
//第一步:获取音频的地址,ling.mp3
//NSString *path = [[NSBundle mainBundle] pathForResource:@"ling" ofType:@"mp3"]; //对格式要求非常严格.
//第五步:获取URL路径,(与上面方法对比.path字符串只是换了一个名字的方法)videoRing
NSURL*url = [[NSBundlemainBundle]URLForResource:@"ling"withExtension:@"mp3"];
//第三步: (int类型)为什么等于11?-->(系统声音把1000~2000的数字都占用了,其他数字随便用.)
SystemSoundIDsoundId =11;//(感觉没多大用)
//第四步:绑定声音和数字,(按照数字去找.)//第六步(打url,爆红,让他自动修改)
AudioServicesCreateSystemSoundID((__bridgeCFURLRef_Nonnull)(url), &soundId);//1.url类型
//第七步:播放声音(点button一次就播放一次)
AudioServicesPlaySystemSound(soundId);
}
- (void)viewDidLoad {
[superviewDidLoad];
}
- (void)didReceiveMemoryWarning {
[superdidReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end