iOS - 系统提醒短音频
2016-06-16 14:39
351 查看
iPhone端系统Audio资源路径:
/System/Library/Audio/UISounds
首先,通过 NSFileManager 获取资源路径下的所有路径(文件夹/文件)
NSFileManager * fileManager = [NSFileManager defaultManager]; NSURL * _soundDataURL = [NSURL URLWithString:@"/System/Library/Audio/UISounds"]; NSDirectoryEnumerator * _soundDirectoryEnum = [fileManager enumeratorAtURL:_soundDataURL includingPropertiesForKeys:@[NSURLIsDirectoryKey] options:0 errorHandler:^BOOL(NSURL * _Nonnull url, NSError * _Nonnull error) { return YES; }];
接着遍历枚举,然后获取系统音频的SoundID:
/*! @typedef SystemSoundID @abstract SystemSoundIDs are created by the System Sound client application for playback of a provided AudioFile. */ typedef UInt32 SystemSoundID;
通过使用 AudioServicesCreateSystemSoundID 方法:
/*! @function AudioServicesCreateSystemSoundID @abstract Allows the application to designate an audio file for playback by the System Sound server. @discussion SystemSoundIDs are used passed to AudioServicesPlayAlertSound() & AudioServicesPlaySystemSound(), designating the audio data to be played by the System Sound server. @param inFileURL A CFURLRef for an AudioFile. @param outSystemSoundID Returns a SystemSoundID. */ extern OSStatus AudioServicesCreateSystemSoundID( CFURLRef inFileURL, SystemSoundID* outSystemSoundID)
获取SoundID后,最后,使用 AudioServicesPlaySystemSound 播放这个SoundID 音频:
AudioServicesPlaySystemSound(SystemSoundID inSystemSoundID)
相关文章推荐
- iOS设置PCH文件的相对路径
- ios学习--IPv6如何在ios应用中支持
- autolayout框架篇(ZXPAutoLayout)
- iOS 关于枚举的使用
- ios学习--IPv6初探
- iOS 自定义返回按钮,仍实现右滑返回的功能.
- iOS开发~CocoaPods使用详细说明
- 高效开发iOS -- 那些不为人知的KVC
- iOS8 原生图片二维码识别
- 应用内发短信
- iOS 利用Runtime自定义控制器POP手势动画
- ios中陀螺仪CoreMotion的用法
- iOS学习- 21 Core Data by Tutorials - CH01
- 好玩的一些APIS for iOS
- 关于iOS多线程,你看我就够了
- iOS开发Tap点击的区域问题。
- iOS开发小技巧之--WeakSelf宏的进化,ios--weakself
- iOS 系统根据导航栏和状态栏自动修改布局
- iOS 10正式发布:十大新功能,更注重人性化
- iOS 10正式发布:十大新功能,更注重人性化