AudioSessionPG
与设备相关的交互:
锁屏。
静音响铃切换。
插入、拔出耳机以及耳机、扬声器、听筒路由路径的确定。
与其他App相关的交互:
后台音乐
与其他app相关的中断:
来电话
闹钟、日历提醒响起
siri导致的中断,当前app可能接收到siri的操作指令。
(一)定义一个Audio Session
(二)使用Categories干活
七种Categories表,参考AudioSessionProgrammingGuide - Appendix B:Audio Session Categories and Modes。
1,选择最好的Category,参考7种categories表。
2,使用Multiroute Category的扩展选项
控制audio steam到不同的输出设备
3,设置自己的category。
4,为指定的category设置modes。
5,为AirPlay选择category与modes。
6,微调category。
7,录音权限:
最好在程序启动时调用requestRecordPermission:方法。
(三)响应中断
紧随着中断的是app的 挂起状态。
1,音频中断处理技术
2,中断的生命周期
3,OpenAL与音频中断
4,使用AVAudioPlayer类处理音频中断。
5,响应多媒体服务器Reset。
6,为用户提供指导避免(录音)中断。