Android Media player在接到来电后未恢复。?
我正在使用媒体播放器播放实时流媒体。我已经把它修好了。但当我打电话并结束通话时,音频会自动停止并恢复 但当我接到来电时,音频停止,不再恢复 我使用以下代码来实现。 但这是行不通的。下面是我的代码。我已将以下内容用作服务,并在使用媒体播放器的同一活动中使用Android Media player在接到来电后未恢复。?,android,android-mediaplayer,incoming-call,Android,Android Mediaplayer,Incoming Call,我正在使用媒体播放器播放实时流媒体。我已经把它修好了。但当我打电话并结束通话时,音频会自动停止并恢复 但当我接到来电时,音频停止,不再恢复 我使用以下代码来实现。 但这是行不通的。下面是我的代码。我已将以下内容用作服务,并在使用媒体播放器的同一活动中使用 private void callsettings() { PhoneStateListener phoneStateListener = new PhoneStateListener(){ @Override
private void callsettings() {
PhoneStateListener phoneStateListener = new PhoneStateListener(){
@Override
public void onCallStateChanged(int state, String incomingNumber) {
// TODO Auto-generated method stub
super.onCallStateChanged(state, incomingNumber);
if (state == TelephonyManager.CALL_STATE_RINGING) {
mute();
} else if (state == TelephonyManager.CALL_STATE_IDLE) {
Unmute();
} else if (state == TelephonyManager.CALL_STATE_OFFHOOK) {
mute();
}
}
};
TelephonyManager mgr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
if (mgr != null) {
mgr.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE);
}
}
private void mute() {
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setStreamMute(AudioManager.STREAM_MUSIC, true);
//am.setStreamVolume(AudioManager.STREAM_MUSIC, 0, 0);
}
private void Unmute() {
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
//am.setStreamVolume(AudioManager.STREAM_MUSIC, 5, 0);
am.setStreamMute(AudioManager.STREAM_MUSIC, false);
}
请帮帮我,idk这个问题的原因是什么。先谢谢你 也许你能解决这个问题 您必须使用音频管理器进行聚焦:请求音频聚焦,流类型为语音呼叫。通话结束后,您将恢复音频服务焦点,然后可以继续通话
查看此处:当活动移出用户屏幕时,您必须存储视频的搜索时间,保存的搜索时间将用于恢复视频的最后状态。感谢快速评论。但是我使用的是音频直播,我认为很难获得搜索时间。你能分享代码吗。我认为这个状态图会帮助你:OP感兴趣的是@Sharan的答案中包含的
OnAudioFocusChangeListener