iphone - iOS:静音模式打开时无法播放声音

标签 iphone objective-c ios audio audiotoolbox

所以我已经完成了我能找到的大部分相关问题,但我仍然无法在静音时播放音频。我相信这可能是我犯的一个小错误。

我正在尝试播放小警报声。这是我的 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 组合起来用于两种用途,但这也没有做任何事情,在锁定/静音模式下仍然无法播放。有什么想法吗?

最佳答案

静音模式下不播放系统声音。 (顾名思义)如果您需要在静音时播放音频,则需要使用不同的方法,例如媒体播放器或其他音频方法。查看 Apple 播放音乐的示例。

关于iphone - iOS:静音模式打开时无法播放声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10742559/

相关文章:

ios - 如何在单个 UITableViewCell 中显示多个(任意)数量的标签(标签)?

ios - 如何在 iOS 中实现以下布局?

ios - 每当我单击该行时,都会在 tableview 单元格中增加 clickcount 标签值

iphone - 如何在核心数据中执行此 MySQL 查询?

iphone - UiLocalNotifcations - 恶意或意外的调度

iPhone:从未调用过 UIApplication WillResignActiveNotification

ios - 显示重复的 Action 导出

ios - ScheduledLocalNotifications 显示错误的时区

ios - 从推送通知打开 View Controller 时如何管理 View 层次结构

iphone - 局部变量放在哪里