The Global Cell-ID is constructed from other
fields in each CellIdentity.
Currently, it is not stored during parceling.
Thus, after a CellId is parceled and unparceled
this value is being lost.
Do a quick fix to update the global Cell ID during
unparceling. A longer-term fix is to resolve the
layering violations that create the situation where
the global Cell ID is defined in the base class
but manipulated in the derived classes.
Fixes a broken unit test.
Bug: 154955167
Test: atest ServiceStateTrackerTest#testRatRatchet
Change-Id: I5c58322ebcec8886405e25e09754c7f154187efe
The recently adjusted logic created a regression where we didn't
always honor the forceUriPermissions flag from a provider; we need
to consider it both in the "generic" case where we don't know the
target and in the "non-generic" case where we know where the grant
is destined.
Bug: 154962874
Test: atest FrameworksServicesTests:com.android.server.uri
Test: atest CtsAppSecurityHostTestCases:android.appsecurity.cts.ExternalStorageHostTest
Change-Id: Ica89ee977e29e084a74e66f49d28d3aed10fe1f3
Due to a binder limitation (b/150808347), any unexpected exception
thrown by a binder service while processing an RPC call, will be
silently discarded and the client will get back a default-initialized
result parcelable (i.e. in most cases, won't know that anything wrong
happened).
We work around this issue by throwing a ServiceSpecificException,
which does get delivered, having a special code to designate an
internal error. Errors resulting from a HAL malfunctions will result
in a HAL reboot, which leads to recovery.
Bug: 154089179
Test: Manual verification of basic error recovery scenarios by
injecting HAL error codes and crashes.
Change-Id: Ib5dbe08a362e545501c04204bebad5ab95f5d632
from the bottom navigation bar.
Added Top and Bottom NotificationPanelViewMediators that can be used to
change the direction that the notification panel should go in.
Bug: 145827692
Test: Manual
Change-Id: I813415711f826a70cdbf4bd16e9b4f425e81e0de
ActivityManagerService.onUserRemoved was accidentally removed in
ag/4246926. This cl adds it back.
The part of onUserRemoved that told ActivityTaskManagerService that
the user had stopped (and thereby cleaned up ATMS) was retained, but
the additional actions of AMS.onUserRemoved - namely, telling
BatteryStatsService and UserController - were accidentally removed.
Consequently, those services were never told when a user was removed.
Bug: 140645064
Test: manual verification that profile is removed in adb shell dumpsys activity users
Change-Id: I903b06ae68d583bdb326ad3b764a63d18b5555d8
- There is a rare chance where SysUI state can change prior to
the overview service being connected in which the sysui state
would not be passed to launcher, and when the service connects,
the updating of the sysui state could trigger no changes (due
to what it thinks is no changes in the flags).
ie:
sysui or launcher crashes
> OPS registers callbacks but service is not yet connected
so initial callback does nothing (only for sysui crash)
> sysui notification state changes, updates sysui state,
notifies OPS via callback, but still not yet connected
> OPS service connects, triggers update of all relevant
states, but notifications is already in that state, so
sysui state skips callbacks to OPS
Change-Id: I7635ed19bfc2767d380703a52b8fb623f8a43e21
Bug: 146964271
Test: Force delay OPS service connection, change sysui state
and ensure launcher is still notified
Conceptually, if the Bouncer is not yet instantiated, it is not prepared
so we should ignore the request.
Test: Existing unit tests passing
Bug: 154928953
Change-Id: Iaa61d65ab8fc056b9ac4566f43599e81a2024e92
Repair the user sensitive flags of any permission with READ_PHONE_STATE.
If that permission has been auto revoked, reset the flag. This CL should
be reverted once pushed through dogfood
Fixes: 154871288
Test: Install on device, verify CBRS is not user sensitive
Change-Id: Ief5ab71fe71d92f26c83f500c89ab893ac9d08f0
The subtitle aligns on top to an invisible checkbox, so it's position
remains the same between different screens.
Test: visual
Fixes: 154759251
Change-Id: I75c28dd02e099680555acdab200a0de909b57c51
Fix issue with A2DP connection/disconnection during media
playback by modifying:
- how messages related to A2DP connection/disconnection are
removed from the AudioDeviceBroker message handler: have
.equals() be used when checking which object to remove,
and correct which class is used for the messages in the
queue:
* MSG_IL_SET_A2DP_SINK_CONNECTION_STATE_*CONNECTED is
using BtHelper.BluetoothA2dpDeviceInfo
* MSG_L_A2DP_DEVICE_CONNECTION_CHANGE_EXT_CONNECTION
is using BtDeviceConnectionInfo
- locking: use the AudioDeviceBroker main lock, mDeviceStateLock
to synchronize posting events on the handler, and removing
some of those messages to avoid race conditions the thread
in which events are posted (e.g. BT's event thread) and the
AudioDeviceBroker handler thread.
Cleanup: annotation around audio formats from native defined
in AudioSystem, moved conversions to AudioSystem.
Bug: 142293357
Test: atest AudioDeviceBrokerTest
Change-Id: I2e8dc813354829fb1b2c7ca95ad395a14f8b70cf