该问题困扰了很长时间。
高通msm7x2xa平台:
后台播放FM,进入music应用并播放音乐,此时FM失去audio焦点;之后暂停music播放,按理说此时music应该执行abandonAudioFocus,但是从log中看到music是在暂停一分钟后才失去焦点,此时FM开始继续播放。
想请教一下:为什么music暂停后要保持焦点1分钟呢?这么设计有什么特别的意义吗?
------解决方案--------------------
为了用户体验吧——有些时候会频繁的切换,宁愿牺牲掉切换时一段时间没声音,也比莫名其妙插入一段声音要好。
------解决方案--------------------
music源码中是在MediaPlaybackService类的onDestroy函数中调用abandonAudioFocus的,暂停时并不会立即执行onDestroy函数。所以fm不会立即得到focus恢复播放。