iOS:静音模式下无法播放我的声音
Posted
技术标签:
【中文标题】iOS:静音模式下无法播放我的声音【英文标题】:iOS: Unable to play my sounds when silent mode on 【发布时间】:2012-05-24 17:36:09 【问题描述】:所以我已经完成了我能找到的关于 SO 的大部分相关问题,但我仍然无法在静音时播放音频。我相信这可能是我犯的一个小错误。
我正在尝试播放一个小的警报声。这是我的viewDidLoad
方法中的代码:
AudiosessionInitialize (NULL, NULL, NULL, NULL);
AudioSessionSetActive(true);
这是我需要播放音频剪辑时调用的方法
-(void)playAudioClip:(CFStringRef)clip
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundFile = CFBundleCopyResourceURL(mainBundle, clip, CFSTR("wav"), NULL);
//Supposed to make sound playable even when silent right?
UInt32 soundType = kAudioSessionCategory_MediaPlayback;
UInt32 soundID;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(soundType), &soundType);
AudioServicesCreateSystemSoundID(soundFile, &soundID);
AudioServicesPlaySystmSound(soundID);
我从 SO 中得到了大部分内容,并在 Apple 编程指南中确认了这一点。我已经尝试将Uint32
用于两种用途,但这也没有做任何事情,在锁定/静音模式下仍然无法播放。有什么想法吗?
【问题讨论】:
静音模式是为了静音... 阅读有关AudioServicesPlaySystemSound的文档 @Joe 我已经读过了,但我不完全确定我应该从中得到什么。 @RobCaraway 它不是为你想要做的事情而设计的,它更多的是用于当短信或电子邮件进来时发出警报。当静音开关打开时,那些也不会被播放.它(模糊地)记录在这一行Sounds play at the current system audio volume, with no programmatic volume control available
。
【参考方案1】:
在静音模式下不播放系统声音。 (顾名思义)如果您需要在静音时播放音频,您需要使用不同的方法,如媒体播放器或其他音频方法。查看 Apple 播放音乐的示例。
【讨论】:
以上是关于iOS:静音模式下无法播放我的声音的主要内容,如果未能解决你的问题,请参考以下文章