首页 > 系统 > iOS > 正文

IOS 播放系统提示音使用总结(AudioToolbox)

2019-10-21 18:46:27
字体:
来源:转载
供稿:网友

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);}

上面是我关于提示声使用的一些技巧,希望大家能学到东西,如果有不足希望大家给予补充,谢谢阅读!


注:相关教程知识阅读请移步到IOS开发频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表