iOS调用系统音频

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS调用系统音频相关的知识,希望对你有一定的参考价值。


最近项目需求,要求调用系统拍照的声音

那么如何做呢?

两步解决

1.导入#import<AudioToolbox/AudioToolbox.h>
2.在调用音频的地方写如下代码

//定义一个SystemSoundID
SystemSoundID soundID = 1108;//具体参数详情下面贴出来
//播放声音
AudioservicesPlaySystemSound(soundID);

自带音频ID:​​http://iphonedevwiki.net/index.php/AudioServices​

播放自定义音频

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


以上是关于iOS调用系统音频的主要内容,如果未能解决你的问题,请参考以下文章

iOS音频播放

如何将音频效果应用于文件并写入文件系统 - iOS

js解决音频audio在IOS系统下无法自动播放问题

音频回调线程中的内存泄漏(iOS)

在运行 ios 13 的设备上没有应用程序崩溃的情况下无法播放音频文件

在iOS中绘制录音音频波形图