IOS 播放系统提示音使用总结(AudioToolbox)
开发过程中需要用到苹果自带的系统提示音,下面我总结了一下关于系统提示音播放的方法
第一步首先得导入AudioToolbox框架
#import <AudioToolbox/AudioToolbox.h>
播放系统自带的提示声
播放系统自带的提示声很简单,只需要两行代码就能搞定了:
//定义一个SystemSoundID
SystemSoundID soundID = 1000;//具体参数详情下面贴出来
//播放声音
AudioServicesPlaySystemSound(soundID);
关于SystemSoundID的相关参数介绍和系统所有的铃声的介绍
播放自定义的提示声,既有声音也带振动
- (void)playNotifySound {
//获取路径
NSString *path = [[NSBundle mainBundle] pathForResource:@"candoNotifySound" ofType:@"mp3"];
//定义一个SystemSoundID
SystemSoundID soundID;
//判断路径是否存在
if (path) {
//创建一个音频文件的播放系统声音服务器
OSStatus error = AudioServicesCreateSystemSoundID((__bridge CFURLRef _Nonnull)([NSURL fileURLWithPath:path]), &soundID);
//判断是否有错误
if (error != kAudioServicesNoError) {
NSLog(@"%d",(int)error);
}
}
//播放声音和振动
AudioServicesPlayAlertSoundWithCompletion(soundID, ^{
//播放成功回调
});
}
只有振动没有声音
//手机只振动没声音
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
只有声音不带振动
//必须得是自定义的声音,经过测试系统的声音好像都带振动
- (void)playNotifySound {
//获取路径
NSString *path = [[NSBundle mainBundle] pathForResource:@"candoNotifySound" ofType:@"mp3"];
//定义一个带振动的SystemSoundID
SystemSoundID soundID = 1000;
//判断路径是否存在
if (path) {
//创建一个音频文件的播放系统声音服务器
OSStatus error = AudioServicesCreateSystemSoundID((__bridge CFURLRef _Nonnull)([NSURL fileURLWithPath:path]), &soundID);
//判断是否有错误
if (error != kAudioServicesNoError) {
NSLog(@"%d",(int)error);
}
}
//只播放声音,没振动
AudioServicesPlaySystemSound(soundID);
}
上面是我关于提示声使用的一些技巧,希望大家能学到东西,如果有不足希望大家给予补充,谢谢阅读!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。