diff options
| author | 2018-05-24 10:44:44 -0700 | |
|---|---|---|
| committer | 2018-05-24 10:44:44 -0700 | |
| commit | f2e08b4c2c2c9cfa150cd9e4bb416d89e38b7b4e (patch) | |
| tree | 7f68860252deae5ae9d1b56d202d230944868fcd | |
| parent | 00c0a5bb238bd410772dc1a2f7fb338e3224fc98 (diff) | |
Ensure self-managed calls use voip audio mode.
Although Telecom ensures that new calls use voip audio mode, the default
value from a Connection would override the Telecom default.
Bug: 76362663
Test: Modify test app to ensure it does not set voip audio mode, ensure
Telecom uses voip audio mode for new calls.
Change-Id: Ie6477659cf6dabd08f371d4958ece1d258cd3106
| -rw-r--r-- | telecomm/java/android/telecom/ConnectionService.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/telecomm/java/android/telecom/ConnectionService.java b/telecomm/java/android/telecom/ConnectionService.java index 2fdbc7194af8..4045eea4db02 100644 --- a/telecomm/java/android/telecom/ConnectionService.java +++ b/telecomm/java/android/telecom/ConnectionService.java @@ -1531,6 +1531,14 @@ public abstract class ConnectionService extends Service { new DisconnectCause(DisconnectCause.ERROR, "IMPL_RETURNED_NULL_CONNECTION")); } + boolean isSelfManaged = + (connection.getConnectionProperties() & Connection.PROPERTY_SELF_MANAGED) + == Connection.PROPERTY_SELF_MANAGED; + // Self-managed Connections should always use voip audio mode; we default here so that the + // local state within the ConnectionService matches the default we assume in Telecom. + if (isSelfManaged) { + connection.setAudioModeIsVoip(true); + } connection.setTelecomCallId(callId); if (connection.getState() != Connection.STATE_DISCONNECTED) { addConnection(callId, connection); @@ -1570,9 +1578,7 @@ public abstract class ConnectionService extends Service { createIdList(connection.getConferenceables()), connection.getExtras())); - if (isIncoming && request.shouldShowIncomingCallUi() && - (connection.getConnectionProperties() & Connection.PROPERTY_SELF_MANAGED) == - Connection.PROPERTY_SELF_MANAGED) { + if (isIncoming && request.shouldShowIncomingCallUi() && isSelfManaged) { // Tell ConnectionService to show its incoming call UX. connection.onShowIncomingCallUi(); } |