* changes:
Send VPN manager event when there is a network error
Send VPN manager event when there is an IkeProtocolException
Send VPN manager event when VPN is deactivated
Send VPN manager event when VPN always-on status is changed
1. During the quick user switch, the user status is changed from
STATE_STOPPING to STATE_BOOTING, the process android.process.core
(ContactsProvider2) was not closed, but the AccountManagerService
cleanup the user in stopping stage.
2. When the user is switched back, the old ContactsProvider2
process was used, but the client doesn't have the listener
registered for AccountManager any more.
3. This causes the ContactsProvider reloaded again when the phone
is connected, then duplicated contacts will show on the screen.
4. Solution is cleaning up the user data in onUserStopped.
Test: manual verification
Bug: 224818967
Change-Id: I8fb44e0e66ff73c055a548d57ff3d45ecc213f71
This comment has several inaccuracies, such as saying that tmpfs is
mounted on /mnt/expand (it's actually /mnt/expand/$volume/user{,_de}),
and referring to DE storage when CE storage is meant. Fix these
inaccuracies, and rework it to explain more clearly what's going on.
Change-Id: I97106f1c2551906c12a96f17934db9253a7fe605
The v2_apk_in_apex_upgrades APEX shim will be useful for testing fixes
for apk-in-apex caching bug.
Test: m com.android.apex.cts.shim.v2_apk_in_apex_upgrades
Bug: 225435110
Change-Id: I5d2270b8341c0405bf256c417acff4279c6b8754
As these interfaces get frozen, java services
implementing the interfaces are required to implement getInterfaceHash
and getInterfaceVersion [1]
[1]
https://source.android.com/devices/architecture/aidl/stable-aidl#new-meta-interface-methods
Bug: 190577319
Test: m
Change-Id: I00ced32a26fd1af7bc8cc23749d92ae90d5a5a0f
Merged-In: I00ced32a26fd1af7bc8cc23749d92ae90d5a5a0f
(cherry picked from commit 1b46333208)
UsbPortManager is made to support both AIDL & HIDL interface until
HIDL is deprecated eventually. UsbPortHal abstract class is defined
which the UsbPortManager grabs an instance of from UsbPortHalInstance
method to talk to the Hal implementation process. UsbPortHalInstance
queries the underlying hal implementation and instantiates UsbPortHal
with either UsbPortHidl or UsbPortAidl based on the IUsb interface
implemented by HAL implementation.
go/iusb-aidl-migrate.
Bug: 200993386
Bug: 199357330
Bug: 211677613
Bug: 213312081
Bug: 199358576
Test: Manually tested through UI.
CTS-Coverage-Bug: 215019881
Change-Id: I246fd6e5bee8138d3ad3b6994665a1d4788c8789
Merged-In: I246fd6e5bee8138d3ad3b6994665a1d4788c8789
(cherry picked from commit bbfa92e694)
InputDevices can be reconfigured when pointer capture changes, but the
app will be notified via InputManager when the updated device
information is available. This races with the onPointerCaptureChange
callback, so advise the use of InputDeviceListener in the pointer
capture documentation for developers to get around this.
Bug: 226425883
Test: None
Change-Id: I7aeb23722dc40b8fd37cb9667a4f23a336e8b5f1
Merged-In: I7aeb23722dc40b8fd37cb9667a4f23a336e8b5f1
During process startup, system creates a process group and places the
new process in it. If process group creation fails for some reason, the
new child process will stay in its parent's group. This poses danger
when the child is being frozen because the whole group is affected and
its parent is being frozen as well. Considering that the parent of an
app is Zygote, freezing it leads to the device becoming unusable.
Fix this by treating group creation failure as a fatal error which would
prevent the app from starting. When system_server fails to create a
process group, it will throw an exception that's not caught and will
self-destruct.
Bug: 227395690
Test: fake group creation failure and confirm app failure to start
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Ib34b4a100c65a9a2705aaef8e7e32322fbedc531
Dark theme "TURN ON UNTIL SUNRISE"/MODE_NIGHT_AUTO is not kept after
reboot. The reason is that TwilightState will takes time to update
so lastState will be null in updateConfigurationLocked().
This lead to a reset of mComputedNightMode and mOverrideNightModeOn.
This is a special bug for "TURN ON UNTIL SUNRISE"/MODE_NIGHT_AUTO,
the other ones work fine and should not be touched, if we do not
treat this as a special case we break the other ones.
Test: Select "TURN ON UNTIL SUNRISE" in Dark Theme and reboot.
Bug: 229228293
Change-Id: Ie32a6ddbbf03fa43ee6dd5e35b3c35ec03e58e0e
* changes:
Modify javadoc for some extra values of VpnManager event
Add toString() for VpnProfileState
Move mSessionKey into Ikev2VpnRunner and make it to be a final var
The underlying network, NetworkCapabilities and LinkProperties
are not necessary to send to VPN app since the purpose of
CATEGORY_EVENT_DEACTIVATED_BY_USER and
CATEGORY_EVENT_ALWAYS_ON_STATE_CHANGED are to notify VPN
app that VPN is deactivated by the user or VPN always-on
status is changed.
Bug: 191413541
Test: Javadoc only changes.
Change-Id: I7fd4b6dad1a4363336f03c217e635fc45bcd0ab6