首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法播放系统声音iOS 7

无法播放系统声音iOS 7
EN

Stack Overflow用户
提问于 2014-03-18 11:27:54
回答 1查看 1.3K关注 0票数 0

在我的应用程序中,当系统接收到特定频率的信号时,我会播放系统声音。为了检测频率,我使用了PitchDetector。然后我在互联网上寻找如何播放iOS系统的声音,我找到了。我想播放名为sms_alert_circles.caf的声音,所以在- (void)viewDidLoad方法中,我编写了以下代码:

代码语言:javascript
复制
NSURL *fileURL = [NSURL URLWithString:@"/System/Library/Audio/UISounds/Modern/sms_alert_circles.caf"];
SystemSoundID soundID;
AudioServicesCreateSystemSoundID((__bridge_retained CFURLRef)fileURL,&soundID);

然后,在检测音频信号频率的方法中,我输入了以下代码:

代码语言:javascript
复制
AudioServicesPlaySystemSound(soundID);

但是,如果我试图在我的iPhone上运行这段代码,什么都不会发生。它识别频率,但它不执行声音,我的代码有什么问题?你能帮帮我吗?

显然我打开了我的设备的声音

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-18 12:40:10

也许你的路径是错的,它应该是一个文件在应用程序包内的路径。

sms_alert_circles.caf文件添加到xcode项目中。检查该文件在项目“构建阶段”中的“复制捆绑资源”列表中。然后更改以下行:

代码语言:javascript
复制
NSURL *fileURL = [NSURL URLWithString:@"/System/Library/Audio/UISounds/Modern/sms_alert_circles.caf"];

代码语言:javascript
复制
NSString *soundPath = [[NSBundle mainBundle]
                           pathForResource:@"sms_alert_circles.caf"
                           ofType:nil];
NSURL *fileURL = [NSURL URLWithString:soundPath];

此外,您还可以尝试使用AKSystemSound库通过几乎一行代码播放声音。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22477974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档