Android 使用AudioFocus控制多个应用的声音输出。用户可以通过requestAudioFocus(OnAudioFocusChangeListener l, int Stream_type,int dura_hint)或者abandonAudioFocus(onAudioFocusChangedListener)来申请或者释放焦点,同时可以接收onAudioFocusChangeListener回调控制自己的播放。由于在request的时候,传递了Stream_type参数,但是自己写代码验证AudioFocus的变化与Stream_type是无关的,为了进行确认,对该流程进行了分析。
序列图如下:

其中主要的处理在MediaFocusControl中,分析流程图如下:

通过分析初步了解了焦点控制流程,确认了焦点变化确实与Stream_type无关。但是Android这样设计一定也有它的道理,还不知道为什么,如果大家有不同的看法,欢迎探讨!
最后
以上就是神勇跳跳糖最近收集整理的关于Android AudioFocus以及MediaFocuControl处理流程的全部内容,更多相关Android内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复