1

我正在尝试在激活静音模式的情况下测试播放歌曲。

我有这个代码,我从这个网站的答案中挑选出来的:

if(CFStringGetLength(state) == 0) {
    //SILENT
    NSLog(@"Silent switch is on");

    //create vibrate
    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
    //this 2 line below use to play audio even in silent/vibrator mode too

    UInt32 audioCategory = kAudioSessionCategory_MediaPlayback;
    AudioSessionSetProperty( kAudioSessionProperty_AudioCategory, sizeof(UInt32), &audioCategory);

    NSError *error;

    AVAudioPlayer *player = [[AVAudioPlayer alloc]initWithContentsOfURL:[NSURL URLWithString:soundPath] error:&error];
    [player play];
    NSLog(@"error %@",error);
}
else {
    //NOT SILENT
    NSLog(@"Silent switch is off");
    AudioServicesPlaySystemSound(finishedSound);
}

我正在 iPod touch 第 4 代 ios 6 中测试应用程序在后台和前台(音量最小)时的声音。

但是对于装有 iOS 5.1.1 的 iPad 来说,这两种情况都不是。

在两个设备中都关闭静音模式时发出声音。

你知道我可以改变什么来实现应用程序在这两种情况下的声音吗?

4

0 回答 0