android - 有没有办法在我的 Android 应用程序中暂停(或静音)默认音乐播放器?

标签 android audio bluetooth

我有一款应用能够通过单声道 (SCO) 耳机和立体声 BT 耳机播放音频。通过 SCO 播放时,我使用 m_player.setAudioStreamTypeAudioManager.STREAM_VOICE_CALL);,对于立体声,我使用:m_player.setAudioStreamType(AudioManager.STREAM_MUSIC);。使用单声道时,我只是使用以下方法将语音流设置为独奏:am.setStreamSolo(AudioManager.STREAM_VOICE_CALL, true);,这会使所有其他流静音。这样,即使在后台播放音乐,也不会干扰我的应用程序。但是,由于立体声 BT 使用音乐流,我不能做同样的事情,音乐会与我的应用程序中的音频同时播放。

如何在播放音频时暂停默认音乐应用程序?我知道 FroYo (2.2) 和更高版本可以使用 requestAudioFocus(),但我需要在 2.0 及更高版本上进行这项工作,所以我需要一个不使用 requestAudioFocus() 的解决方案。

谢谢

最佳答案

如果您绑定(bind)到 android MediaPlaybackService,您应该能够暂停主媒体播放器。 这是我发现的可能对您有帮助的教程:http://www.adityatalpade.com/2010/07/31/how-to-bind-to-services-from-the-android-source/

关于android - 有没有办法在我的 Android 应用程序中暂停(或静音)默认音乐播放器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5254316/

相关文章:

math - 如何从加权数字列表中获得更精确的值?

android - MAC地址在Android中是否随时间变化

android - 如何解决 infater 布局中的 ListView ?

java - JNI + 类型转换(例如,Signed Short 到 Unsigned Short)

python - Jython:在 Windows 上发出简单的蜂鸣声

java - Android 蓝牙发现不记录任何内容

android - 动态添加发现蓝牙设备到 ListPreference

android - Cordova /Phonegap : run FileTransfer plugin in background thread

Android Studio 3.1 布局编辑器中的TimePicker在哪里

javascript - HTML 5 <audio> - 在特定时间点播放文件