Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 437f1a22 authored by Tyler Gunn's avatar Tyler Gunn
Browse files

Ensure DISCONNECTING state is passed to the InCallService on local disc.

When a local disconnect request is requested from an InCallService, the
call is effectively in a DISCONNECTING state. This was not being
explicitly communicated to the InCallService, however, and instead it
was relying on the fact that other call updates would occur causing
the InCallService to be updated.

This CL explicitly invokes the onCallStateChanged callback in CallsManager
to ensure that the DISCONNECTING state is reported to the ICS immediately
should there be no intermediate call changes which would cause such an
update to occur.

Also, moved the logic for determining the "parceled call state" into the
com.android.server.telecom.Call so that it can be used in logging to
ensure Telecom logs more accurately report the call state the ICS will
see.

Also, updated a CallAudioManager log message reported when an invalid
audio route is specified; moved it to warning level and made it more
explicitly report that the log is due to an error in an InCallService
(I see this reported a lot as a root cause for bugs when it is completely
unrelated).

Test: Manual testing to verify disconnecting state passed immediately to
IncallService
Test: Add unit test to ensure disconnecting state will be passed to the
InCallController immediately.
Fixes: 155109531

Change-Id: I94d24182ee82679fb918244c9e3042dfce2f383a
parent 832c26fb
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment