IOS 播放系统提示音使用总结(AudioToolbox)
程序员文章站
2023-12-22 20:26:28
ios 播放系统提示音使用总结(audiotoolbox)
开发过程中需要用到苹果自带的系统提示音,下面我总结了一下关于系统提示音播放的方法
第一步首先得导入aud...
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); }
上面是我关于提示声使用的一些技巧,希望大家能学到东西,如果有不足希望大家给予补充,谢谢阅读!