如果我通过启用某些选项(使用setCategory:withOptions:error:)来设置AVAudioSession类别,稍后我调用setCategory:error :,先前设置的选项会发生什么?
如果答案是#1,如果新类别与启用的选项不兼容会怎样?它是否被系统自动禁用? 我试着阅读文档,但我找不到那个特定的信息。
谢谢。
答案 0 :(得分:2)
当发生类别更改时,选项不会保持其状态。
应用程序的categoryOptions属性当没有使用当前可用的任何setCategory方法设置选项时,AVAudioSession共享实例的值被赋值为0.
例如这一行 -
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
相当于 -
AVAudioSessionCategoryOptions AVAudioSessionCategoryOptionsNone = 0;
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionsNone error:nil];