Android 安卓:在我的应用程序中安装音乐播放器时,我能确保现在没有其他媒体播放音乐吗?

Android 安卓:在我的应用程序中安装音乐播放器时,我能确保现在没有其他媒体播放音乐吗?,android,media-player,Android,Media Player,我希望我的应用程序在运行时播放音乐,但我不希望音乐与其他应用程序(android音乐应用程序或其他外部音乐应用程序,如pandora、grooveshark或winamp)当前播放的音乐重叠。 我的问题是:有没有一种方法可以确保现在没有其他任何东西在播放,而不管源是什么 谢谢 从android 2.2开始,您可以使用AudioManager.requestAudioFocus(),其他音频播放器应收听此焦点更改请求,并可以根据您的焦点请求的音频类型停止/暂停/降低音频音量。然而,并不是所有的音频

我希望我的应用程序在运行时播放音乐,但我不希望音乐与其他应用程序(android音乐应用程序或其他外部音乐应用程序,如pandora、grooveshark或winamp)当前播放的音乐重叠。
我的问题是:有没有一种方法可以确保现在没有其他任何东西在播放,而不管源是什么


谢谢

从android 2.2开始,您可以使用
AudioManager.requestAudioFocus()
,其他音频播放器应收听此焦点更改请求,并可以根据您的焦点请求的音频类型停止/暂停/降低音频音量。然而,并不是所有的音频播放应用程序都费心去实现这一点

为了方便起见,您还应该侦听来自其他应用程序的音频焦点更改请求,并相应地暂停您的应用程序音频


在早期版本的android上调用mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC)通常会停止播放任何其他音乐

我认为(但不是肯定的)系统只有一个MediaPlayer对象。如果另一个应用程序有它,但还没有调用它的.release(),那么你将无法自己获得它。好吧,根据我的检查,有些应用程序播放的音乐相互重叠…所以答案是,不能保证我能够停止在其他地方播放音乐,对吗?是的。就我自己而言,我刚刚实现了音频聚焦方法,因为它非常容易实现,只是希望大多数流行音乐播放器也能实现它