iOS开发 System Sound Services(振动和提示音)
System Sound Services 播放音效
使用 System Sound Services方式只适合播放提示或者警告短小音频
声音长度不能超过30秒
声音文件必须是 PCM 或者是 IMA4(IMA/ADPCM) 格式。
必须是 .caf、.aif 、.wav 、的文件
不能控制播放进度
没有循环播放
iOS使用系统声音服务来支持三种不同的通知:
- 声音:立刻播放一个简单的声音文件。如果手机被设置为静音,用户什么也听不到
- 提醒:播放一个声音文件,如果手机被设置为静音或震动,将通过震动提醒用户
- 震动:震动手机,而不考虑其他设置
对于提醒音来说,与系统声音之间的差别在于,如果手机处于静音状态,提醒音将自动触发震动。提醒音的设置和用法与系统声音相同,区别在于系统声音调用 AudioServicesPlaySystemSound
,而提醒音调用AudioServicesPlayAlertSound
。
调用AudioServicesCreateSystemSoundID(CFURLRef inFileURL,SystemSoundID* outSystemSoundID)
函数注册音频文件,第一个参数代表音频文件的URL(可通过NSURL 转换为CFURLRef),迭戈参数代表注册该音频的 SystemSoundID 。
当需要播放音频的时候,调用
AudioServicesPlaySystemSound(SystemSoundID inSystemSoundID)
立刻播放一个简单的声音文件。如果手机被设置为静音,用户什么也听不到
AudioServicesPlayAlertSound(SystemSoundID inSystemSoundID)
播放一个声音文件并震动,如果手机被设置为静音或震动(与用户在设置
-声音
-响铃模式震动
、静音模式震动
设置有关),那么将通过无提醒或震动提醒用户!
代码
首先 在项目中导入一个音频文件,注意是符合上述格式的音频
再导入头文件
#import <AudioToolbox/AudioToolbox.h>
复制代码
在ViewController.m 中
-(void)sound{SystemSoundID soundID;//NSBundle来返回音频文件路径NSString *soundFile = [[NSBundle mainBundle] pathForResource:@"dingdong" ofType:@"wav"];//建立SystemSoundID对象,但是这里要传地址(加&符号)。 第一个参数需要一个CFURLRef类型的url参数,要新建一个NSString来做桥接转换(bridge),而这个NSString的值,就是上面的音频文件路径AudioServicesCreateSystemSoundID((__bridge CFURLRef)[NSURL fileURLWithPath:soundFile], &soundID);//播放提示音 带震动AudioServicesPlayAlertSound(soundID);//播放系统声音
// AudioServicesPlaySystemSound(soundID);
}
复制代码
Demo地址:下载
iOS开发 System Sound Services(振动和提示音)相关推荐
- iOS系统声音服务(System Sound Services)
系统声音服务(System Sound Services)提供了一个接口,用于播放不超过30秒的声音.它支持的文件格式有限,具体地说只有CAF.AIF和使用PCM或IMA/ADPCM数据的WAV文件. ...
- iOS开发:简单的Toast提示框实现
今天小年,再分享一篇2018年度最后一篇博客,博主是以iOS开发出身,那就最后一篇博文就分享一下关于iOS的内容吧.iOS开发过程中,有些时候操作App的时候,需要给用户对应的响应提示操作,使用系统自 ...
- AudioContext开发后台管理系统新订单提示音(audio不能自动播放)
audio 因为audio标签不能自动播放.需要用户和浏览器又交互才能实现播放.但是需求是不能显示播放器控件,只能有声音响起. AudioContext 使用AudioContext能解决该问题 wi ...
- iOS 12 修改微信提示音,无需越狱不用电脑,详细教程
早已听腻了 iPhone 上面的微信提示音,丝毫没有个性,如何更换成其他声音呢?下面卡卡说一下如何在 iOS 12 系统下更改微信提示音 更多微信技巧: 微信地区DIY 教程:https://kkio ...
- iOS开发之音频播放AVAudioPlayer 类的介绍
主要提供以下了几种播放音频的方法: 1. System Sound Services System Sound Services是最底层也是最简单的声音播放服务,调用 AudioServicesPla ...
- ios开发之音频视频开发
一.音频播放方式 1.System Sound Services 2.AVAudioPlayer 3.Audio Queue Service 4.OpenAL 二.使用 1.System Sound ...
- installshield 安装文件属性的原始文件名 如何修改_iPhone修改微信提示音,iOS12可用,无需越狱详细教程...
早已听腻了 iPhone 上面的微信提示音,丝毫没有个性,如何更换成其他声音呢?下面兽兽说一下如何在 iOS 12 系统下更改微信提示音 使用限制 先泼一盆冷水,并非所有的机型都可以用!! Filza ...
- 修改telnet提示并非_iPhone修改微信提示音,iOS12可用,无需越狱详细教程
早已听腻了 iPhone 上面的微信提示音,丝毫没有个性,如何更换成其他声音呢?下面兽兽说一下如何在 iOS 12 系统下更改微信提示音 使用限制 先泼一盆冷水,并非所有的机型都可以用!! Filza ...
- iOS开发小结 - 播放系统提示音使用总结(AudioToolbox)
开发过程中需要用到苹果自带的系统提示音,下面我总结了一下关于系统提示音播放的方法 第一步首先得导入AudioToolbox框架 #import <AudioToolbox/AudioToolbo ...
最新文章
- linux yield_linux内核的一些知识点(上)
- FPGA之道(26)VHDL初始化
- 计算机专业指南考试,电大计算机专业专科期末考试试卷《计算机专业指南》试卷...
- xss测试工具(xsstrike基于python)
- 序列化与反序列化(记住密码)
- BugkuCTF-MISC题baby_flag.txt
- kettle使用数据库来生成序列_kettle专题5:数据转换
- win10同时安装jdk8和jdk11带来的小坑
- (6)GPS坐标与UTM坐标的转换
- 什么软件可以测试电脑硬盘速度,硬盘速度测试软件
- Android实现图片(拍照+相册)上传功能
- 11.判断一个人出生了多少天
- 基于面部表情的情绪识别-论文学习
- 分享电脑便捷妙招,电脑小白们快码住
- 探索者 STM32F407 与 HC05 蓝牙模块相连
- Spring+SpringMVC+Mybatis简单整合 图书管理项目 实现增删改查
- 计算机网络第六、七版答案
- WebAPI搭建(一)如何在Webforms 下 搭建WebAPI
- docker 安装Subversion Edge
- 区块链+物联网技术结合,区块链技术应用开发解决方案