我有一个视频会议应用程序。 我的应用程序在另一个应用程序调用时处理,并且我有一个audioFocusChange:
AudioManager.OnAudioFocusChangeListener onAudioFocusChangeListener = new AudioManager.OnAudioFocusChangeListener() {
@Override
public void onAudioFocusChange(int focusChange) {
Log.i("", "microphoneTEST focus change is: " + focusChange);
if (focusChange == -2 || focusChange == -1) {
Log.i("", "microphoneTEST focus change is: ENTERED HERE+ " + speakerMuted);
LmiAudioCapturer.pause();
if (!speakerMuted)
speakerView.performClick();
doReInit = true;
}
if (focusChange == 1) {
if (doReInit) {
LmiAudioCapturer.resume();
if (audioManager != null)
audioManager.setSpeakerphoneOn(true);
doReInit = false;
if (speakerMuted)
speakerView.performClick();
}
}
}
};
但是从一开始这是行不通的。 我的情况是这样的: 1.我的电话正在打一个电话 2.我尝试运行我的应用程序。这导致我的应用程序没有音频,因为音频焦点是在电话上设置的。 我想做的是在开始会议时将电话设置为OnHold。因此它可以启动音频。然后用户可以返回到呼叫,这将起作用。
是否可以通过我的应用将电话置于保持状态?