所以我已经完成了我能找到的关于 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
两者结合使用,但这也没有做任何事情,在锁定/静音模式下仍然没有播放。有任何想法吗?