From 9cc5a590ca34ac4f05c5bb5c733b0587b4422427 Mon Sep 17 00:00:00 2001 From: twyen Date: Tue, 1 Aug 2017 15:56:14 -0700 Subject: Prevent voicemail from playing when call is in progress Visual voicemail playback uses the phone stream, which will cause all sort of audio conflict in a call. This CL forces voicemail playback to fail if a call is in progress. Bug: 63584851 Test: manual - play voicemail while in call, "Cannot play voicemail" shown. PiperOrigin-RevId: 163899919 Change-Id: I7350f6904b5a76f9c21a1d541f3c1f39271a5608 --- .../android/dialer/app/voicemail/VoicemailPlaybackPresenter.java | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'java/com/android/dialer/app') diff --git a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java index 5c9bc01c2..6d5015a22 100644 --- a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java +++ b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java @@ -57,6 +57,7 @@ import com.android.dialer.constants.Constants; import com.android.dialer.logging.DialerImpression; import com.android.dialer.logging.Logger; import com.android.dialer.phonenumbercache.CallLogQuery; +import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.util.PermissionsUtil; import com.google.common.io.ByteStreams; import java.io.File; @@ -515,6 +516,11 @@ public class VoicemailPlaybackPresenter mView.disableUiElements(); mIsPrepared = false; + if (mContext != null && TelecomUtil.isInCall(mContext)) { + handleError(new IllegalStateException("Cannot play voicemail when call is in progress")); + return; + } + try { mMediaPlayer = new MediaPlayer(); mMediaPlayer.setOnPreparedListener(this); -- cgit v1.2.3