When TelecomManager methods perform a read phonestate check from a work
profile user, it is possible to get an INTERACT_ACROSS_USERS exception.
This is due to the fact that the filterByIntent method was not calling
queryIntentActivitiesAsUser.
Test: Manual
Bug: 31304557
Change-Id: I2a1869162e5a52aed986a99cc378a6c630af4a70
This is important so that Telecom can track the duration of the call,
which is tracked using wall clock time.
Test: Manual, unit test
Bug: 64068300
Merged-In: If642d282cd8134060acf6ffe8d81215c394d800c
Change-Id: If642d282cd8134060acf6ffe8d81215c394d800c
(cherry picked from commit b2f875bc54)
Define connection event to notify
Telecom/InCallUi about change in
account handle after redial and extra
for emergency phone handle.
Bug: 27059146
Change-Id: Ie72ab2901ec05d972204ed11f115a05b79173c1d
This is important so that Telecom can track the duration of the call,
which is tracked using wall clock time.
Test: Manual, unit test
Bug: 64068300
Change-Id: If642d282cd8134060acf6ffe8d81215c394d800c
Adding a new @hide callback in ConnectionService which a CS implementation
can implement. A callback from Telecom is responsible for invoking this
method.
Test: Manual
Bug: 33272455
Change-Id: Id17cf0fd8fd491b7677f9b7a7b52c76270b1c8c9
When a call is disconnected with the Telephony DisconnectCause
IMS_ACCESS_BLOCKED, DisconnectCause#getReason will now return
the reason REASON_IMS_ACCESS_BLOCKED.
Bug: 33821263
Test: manual tests
Merged-In: Ic8b76e83aa8eb20074862f0e67734d2c5389ba12
Change-Id: Ic17cefa35a51f739c893923a2db7f3dca8ada202
When calling "get" on the mConnectoinById map, a null callId will result
in an NPE.
In findConnectionForAction, defaulting to returning the "null" connection
which is the same behavior as if it isn't found.
In notifyCreateConnectionComplete, specifically checking if the callId
is null and skipping the onCreateConnectionComplete callback.
This scenario is possible if the connection is remove from the
ConnectionService before the connection complete callback comes back from
Telecom.
Test: Manual
Fixes: 62588734
Change-Id: Ie610c51155ed417e0f916000fe20e4484bdb6603
Unlike the code in Telecom which can use Bundle.setDefusable(..), this
framework code is used within a Connection Manager's code space, so the
setDefusable method does not work.
To prevent crashing the Connection Manager's app, catching the exception
and ignoring extras in this case (not much else we can do).
I've also filed a bug against the offending component known for putting
bad parcelables into the extras.
Test: Modified code to force this scenario.
Bug: 64499462
Change-Id: If44ad2e2c8e285d513969c6babe5a798242da53d
In an effort to remove redundant updates to Telecom,
conferenceable connection updates for a conference
were being removed if the list of connections hasn't
changed.
For GSM, when a new outgoing call was placed, it was
added to the conference controller before being added
to the list of connections. The conference controller
was updating the conferenceable connections for that
conference with a connection that wasn't being tracked
yet, so it was not notifying telecom of the connection.
It was still added to the list of conferenceable
connections in the conference, however, so later
conferenceable updates were being disregarded before
being sent to Telecom.
This change removes conferenceable update squelching
so that we always update telecom with the correct
conferencable connections for a conference.
Bug: 37989809
Test: Manual, Procedure in Bug, unit tests
Change-Id: I62960df9db27f0b303431aef99e73ef87498d374
Output event times in local time rather than in UTC for compatibility
with the rest of the timestamps in the bug report
Test: manual
Change-Id: I2d458f09aec635a43e3d0565e8f8da803124f368
When a call is disconnected with the Telephony DisconnectCause
IMS_ACCESS_BLOCKED, DisconnectCause#getReason will now return
the reason REASON_IMS_ACCESS_BLOCKED.
Bug: 33821263
Test: manual tests
Change-Id: Ic17cefa35a51f739c893923a2db7f3dca8ada202
Apps with a normal UID are typically isolated enough to not require
socket tagging; we're mostly interested in tracking down internal
UIDs that have lots of code sharing the same UID.
Also fix up everyone doing manual string checks of Build.TYPE, since
we now have first-class fields for those.
Bug: 38126076
Test: builds, boots
Change-Id: I3a40348196bd8459289f2b9355d9783a07f1e7dd
We do not post a notification when a self-managed call is missed
and we log it in the call log.
Bug: 62999358
Test: Manual
Change-Id: I0ae851e6fa17fbd3b7591b01745956feef4c57fd
Define new event which is sent to the destination call if the source
disconnects prior to the completion of the handover.
Test: Manual using test app
Bug: 62904673
Change-Id: I9fa74e374f78beb801f08ce1fd7260d7d7fe7cac
Add EXTRA_ALWAYS_USE_VOIP_AUDIO_MODE extra to phone account
so that all voip call audio mode will be set MODE_IN_COMMUNICATION
Test: Manual
Bug: 34869196
Change-Id: I367fbfb05779f80ebde78cb8dcebeafa3f885b3b
Used in handovers to tell the account we're handing over to which account
the call is from.
Test: Manual
Bug: 38027075
Change-Id: I9b61a5fce3e4f7344174a1b81f4964ca02b71ccd
This CL will be reverted once it merges into the next release branch
to re-introduce the proposed APIs.
This CL also makes the following code changes to preserve API
compatibility:
-- It keeps the recently added RemoteViews.clone() synchronized logic
intact, but moves it inside the method to avoid changing the API
signature.
-- It reverts the RttCall.read() behavior to the oc-dev logic, since
we can't throw IOException until we get an API level bump. (The
original logic returned null instead of throwing.)
Test: builds, boots
Bug: 62427252, 62431886, 62427329
Bug: 62468911, 62431162, 62428935, 62429096
Bug: 37290820, 37359238, 36886243
Bug: 30143923, 35761231, 62192626, 29829689
Change-Id: I83d723f598cb0ee1fe198e65debd86ef7fd0420c