如何检查设备是否具有不是由我的应用程序引起的音频输出

时间:2016-05-11 17:25:17

标签: java android audio

目前我正在为Android开发音乐播放器,我想知道是否可以检查是否有任何音频输出不是由我的应用程序引起的。

我希望我的应用程序降低/停止它的音乐播放,如果它检测到音频输出不是由自身引起的,并且如果没有其他应用程序引起的音频输出则重置音乐音量/继续音乐播放。

我尝试过的一件事是使用OnAudioFocusChangeListener,但这并没有解决我的问题。 视频播放示例(Youtube)。

  1. 我开始播放应用的音乐
  2. 我开始播放视频
  3. OnAudioFocusChangeListener检测到音频焦点更改
  4. 我的应用停止播放音乐
  5. 暂停视频或视频结束
  6. OnAudioFocusChangeListener未检测到任何音频焦点更改(如果我终止Youtube应用,则仅检测到音频焦点更改)
  7. 我的应用程序没有继续它的音乐播放,因为它认为仍然有另一个应用程序引起的音频输出
  8. (将OnAudioFocusChangeListeneraudioManager.isMusicActive()结合使用无法正常工作,因为OnAudioFocusChangeListener只检测到音频焦点更改两次,而导致应用的音频输出正在运行:我第一次开始使用应用程序和我杀死应用程序时的音频播放。)

    那么我该怎么做才能检测设备是否有任何不是由我的应用程序引起的音频输出?

0 个答案:

没有答案