Swift - 系统声音服务的使用(播放声音,提醒,震动)
2024-08-30 18:46:08
1,系统声音服务介绍:
系统声音服务提供了一个Api,用于播放不超过30秒的声音。它支持的文件格式有限,具体的说只有CAF、AIF和使用PCM或IMA/ADPCM数据的WAV文件。
但此函数没有提供操作声音和控制音量的功能,因此如果是要为多媒体或游戏创建专门声音,就不要使用系统声音服务。
2,系统声音服务支持如下三种类型:
(1)声音:立刻播放一个简单的声音文件。如果手机静音,则用户什么也听不见。
(2)提醒:播放一个声音文件,如果手机设为静音或震动,则通过震动提醒用户。
(3)震动:震动手机,而不考虑其他设置。
3,使用样例(首先类中要引入AudioToolbox)
1
|
import AudioToolbox |
(1)声音播放
1
2
3
4
5
6
7
8
9
10
11
12
|
@IBAction func systemSound(sender: AnyObject ) { //建立的SystemSoundID对象 var soundID: SystemSoundID = 0 //获取声音地址 var path = NSBundle .mainBundle().pathForResource( "msg" , ofType: "wav" ) //地址转换 var baseURL = NSURL (fileURLWithPath: path!) //赋值 AudioServicesCreateSystemSoundID (baseURL, &soundID) //播放声音 AudioServicesPlaySystemSound (soundID) } |
(2)提醒
1
2
3
4
5
6
7
8
9
10
11
12
|
@IBAction func systemAlert(sender: AnyObject ) { //建立的SystemSoundID对象 var soundID: SystemSoundID = 0 //获取声音地址 var path = NSBundle .mainBundle().pathForResource( "msg" , ofType: "wav" ) //地址转换 var baseURL = NSURL (fileURLWithPath: path!) //赋值 AudioServicesCreateSystemSoundID (baseURL, &soundID) //提醒(同上面唯一的一个区别) AudioServicesPlayAlertSound (soundID) } |
(3)振动
1
2
3
4
5
6
|
@IBAction func systemVibration(sender: AnyObject ) { //建立的SystemSoundID对象 var soundID = SystemSoundID (kSystemSoundID_Vibrate) //振动 AudioServicesPlaySystemSound (soundID) } |
最新文章
- css相对定位和绝对定位
- 将图片插入到excel中
- run a Freight robot (3)
- 	BP神经网络
- mplayer 用法大全 转
- 将js对象转为json对象属性加上引号
- highcharts 结合phantomjs纯后台生成图片系列二之php
- [转]StructLayout特性
- Python创建list
- JavaScript trim 实现(去除字符串首尾指定字符)
- 使用atomic一定是线程安全的吗
- error C4996 The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name
- JavaBean的属性变量名前两个字母大小写问题
- CSS一些样式以及注意
- poj3253 Fence Repair(贪心+哈夫曼 经典)
- 转 docker创建私有仓库和k8s中使用私有镜像
- (转)3款优秀的移动webAPP网站在线测试工具
- 【JEECG技术文档】JEECG 组织机构导入V3.7
- tkinter的grid布局中合并单元格
- LeetCode: Path Sum 解题报告