我的一个应用程序中有一个要求,我需要在单击按钮时播放音频一会儿。
现在出现情况,如果用户已经在设备上播放音乐,那么我需要暂停该音乐播放器以播放声音,并且在释放MediaPlayer
对象之后,我想恢复其他应用的(或至少系统的)音乐播放器。
我设法做到的是获得音频焦点,如下所示-
AudioManager am = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
if (am!=null){
am.requestAudioFocus(new AudioManager.OnAudioFocusChangeListener()
{
@Override
public void onAudioFocusChange(int focusChange) {
}},
AudioManager.STREAM_MUSIC,
AudioManager.AUDIOFOCUS_GAIN);
}
但是此代码段完全停止了其他应用程序的音乐播放器,并且在释放我的MediaPlayer
对象AudioService
之后,并没有将焦点重新分配给系统的音乐播放器。
答案 0 :(得分:1)
您可以使用此代码。有关onAudioFocusChangeListener
的更多信息sensible = ds.Var_1 * Dataset_X * ds.Var_2
latent = ds.Var_1 * Dataset_Y * ds.Var_3
Heat = xr.concat(
[sensible, latent],
dim=pd.Index(['sensible','latent'],name='Energy_type'))
ds['Heat'] = Heat
答案 1 :(得分:0)
使用此:
public void musicPause() {
AudioManager mAudioManager = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
if (mAudioManager.isMusicActive()) {
Intent i = new Intent("com.android.music.musicservicecommand");
i.putExtra("command", "pause"); // you can give command here play,pause,resume and stop
playVideo.this.sendBroadcast(i); // playVideo is my Activity name
}
}