This change ensures that the VCN listens for changes on a
per-subscription basis. In the DSDS case, the
Settings.Global.MOBILE_DATA toggles is insufficient, as the toggles for
individual subscriptions are changed instead of the global toggle.
Without this patch, the VCN may ignore changes in the user toggles, and
continue providing data service even after user data is disabled.
Similarly, it may fail to bring up a VCN when user data is re-enabled.
Bug: 214247774
Test: atest FrameworksVcnTests
Original-Change: https://android-review.googlesource.com/1947700
Change-Id: I1e84c25f48eab90dca163eda809fc11d5d21bc31
Merged-In: I1e84c25f48eab90dca163eda809fc11d5d21bc31
This change immediately tears down the VCN network if all underlying
networks are lost, and the device is in airplane mode. This ensures
consistency where other components may not understand the lingering
behavior of the VCN network
Bug: 207014742
Test: atest FrameworksVcnTests
Original-Change: https://android-review.googlesource.com/1908637
Merged-In: Ib05f0c4255e847eed7d8623b35c5a7dfedd920d6
Change-Id: Ib05f0c4255e847eed7d8623b35c5a7dfedd920d6
As CL[1] changes the semantic of WindowState#isVisibleOrAdding that
affects computeImeTarget result when finishing the activity with IME has
shown by back navigation, that caused IME flicking after backing
to the previous app.
Add a flicker test to verify the above test scenerio won't happen.
[1]: Ic537d77c8b0e10e80444dd46d7b49e5a9bd63d6c
Bug: 205075200
Bug: 205761007
Bug: 204948120
Bug: 204731658
Test: atest OpenImeWindowAndCloseTest
Change-Id: Ibe582ccd73aa3b2326040f5d2e6e5edd9de95605
The current implementation doesn't set the status bar as invisible when the devices screen is off
Test: atest FlickerTests:OpenAppNonResizeableTest
Bug: 202936526
Change-Id: Ieac25650c4d022d0f72c8c355352e1a23c7674e7
This is necessary to fix "Unable to save trace file /sdcard/flicker/startRotationServiceTest_layers_trace.winscope" in the library self tests
Bug: 202288112
Bug: 202366188
Bug: 188993244
Test: atest FlickerTests WMShellFlickerTests
Change-Id: I9d6d6025be8b659d2f062771cfbd2f6c0982c2be
Flicker on master diverged form sc-v2, to make it easier to debug
flicker issues on sc-v2, push the current version of flicker into sc-v2
Test: atest FlickerTests WMShellFlickerTests
Bug: 183993924
Change-Id: Icf40d1aa707ffe80e46dcfd2c616355cf48e6719
In this case, legacy transitions is incorrect because it was
written before live-tiles and, due to some quirk, still manages
to pass the now-incorrect test. However, the test is technically
wrong and thus shell transitions doesn't pass. This CL fixes the
tests when shell transitions is enabled.
Specifically, there are a few tests explicitly called "X is ALWAYS
visible" which should test that the window in question remains
visible throughout the test. However, the test was adjusted to
test that the windows go away and come back. With shell transitions
the windows behave correctly, so we can remove the adjustments.
Bug: 193565597
Test: atest ReOpenImeWindowTest
Change-Id: I33c5b6327e5b5762958b66ff20d5fe67b9566c10
Merged-In: I33c5b6327e5b5762958b66ff20d5fe67b9566c10
This change ensures that safe mode callbacks are always triggered from
the VcnGatewayConnection up, ensuring that if a gateway connection
is restarted and successfully validates, it will notify the Vcn class,
and kick it out of safe mode.
Previously, if a VCN had entered safe mode, and a config was updated,
the newly updated VcnGatewayConnection would be brought up as "not" in
safe mode, and thus the onSafeModeStatusChanged() callback would never
be fired if the new VcnGatewayConnection successfully connected.
Calling onSafeModeStatusChanged() multiple times is safe, and serves as
a "connection status changed" callback.
Bug: 196841140
Test: atest FrameworksVcnTests
Test: manual testing
Original-Change: https://android-review.googlesource.com/1811936
Change-Id: I43c82ada9e9429e8283be65ab73d13075dfd6038
Merged-In: I856517924d0a767b63ea6127b7d4e39e09e93f2c
(cherry picked from commit 7cf35e7bd9)
Flicker on master diverged form sc-v2, to make it easier to debug
flicker issues on sc-v2, push the current version of flicker into sc-v2
Test: atest FlickerTests WMShellFlickerTests
Bug: 188792659
Change-Id: I1c832bf32214b12ba4b708bccfc95cf259324844
There is a interesting interaction between staged and non-staged
installs of the same APEX. Let's say an installer staged v1 -> v2 APEX
update, and then does a non-staged update to v3. After device is
rebooted, apexd will apply the staged v1 -> v2 session, silently
downgrading an APEX from v3.
For apks, this problem is solved by storing an expected version. When an
APK session is being applied during boot, Package Manager will check if
the currently installed version is equal to the expected one stored in
the staged session. If they mismatch, an install is failed.
Unfortunately, implementing the same logic in apexd will require a
non-trivial refactoring which is too late to do in S. Instead we are
just going to fail the non-staged installation.
Test: atest StagedInstallInternalTest
Bug: 187864524
Change-Id: I9000f40cede9a324a5059a09deb8eb5be13b21f9
* Mainline APEXes can only be updated by a modulesInstaller (an entry
in whitelisted-staged-installer.xml with isModulesInstaller="true")
* The whitelisted-staged-installer.xml file can have only one entry with
isModulesInstaller="true"
* Vendor APEXes can only be updated by an installer defined in the
corresponding entry in vendor-apex-allowlist.xml.
BYPASS_INCLUSIVE_LANGUAGE_REASON=existing occurrences
Test: atest StagedInstallInternalTest
Test: atest GtsStagedInstallHostTestCases
Test: atest CtsRollbackManagerHostTestCases
Test: atest CtsStagedInstallHostTestCases
Bug: 190802380
Change-Id: I729abb5153df079fb6885016a4b41d0acc827e3c
This change sets TRANSPORT_PRIMARY for all NetworkScore objects passed
to ConnectivityService by the VCN. Without this patch, a VCN in safe
mode will never get any NetworkRequests, since the new Policy-based
NetworkRanker always prioritizes a existing satisfier of a network,
regardless of score. However, a higher-priority policy check ensures
that a TRANSPORT_PRIMARY request is used if it exists. This changes the
VCN to utilize that functionality.
Bug: 194122634
Test: atest FrameworksVcnTests
Original-Change: https://android-review.googlesource.com/1772025
Merged-In: I3a298a6c4c594c6e224f3f05764614802c00e9b0
Change-Id: I3a298a6c4c594c6e224f3f05764614802c00e9b0
This CL contains two tests:
1) When fs-checkpoint-mode is false, but fs-rollback-mode is true
2) When both modes are false
Bug: 193648282
Test: atest StagedInstallInternalTest
Change-Id: I9c96296343a7f39a65de9e06e8a07d765f832044
This change ensures that the VcnGatewayConnection can never abort a
quitting command; specifically, if a non-quitting disconnect request is
processed after a quitting disconnect request, the isQuitting value MUST
continue to stay set (as true).
Failure to OR the values results in orphaned VcnGatewayConnection(s),
and the VCN network thrashing.
Additionally reduce verbosity of local logs, to ensure it better
captures failures and logWtf(s)
Bug: 192776413
Test: atest FrameworksVcnTests
Original-Change: https://android-review.googlesource.com/1768623
Merged-In: Iec8dae701838794261957609bae4e270eaa9cdc7
Change-Id: Iec8dae701838794261957609bae4e270eaa9cdc7
This change ensures that there is only ever one VCN running at a given
point in time, and that if the device has switched to using a
subscription in a different subscription group, the VCN will immediately
tear down.
This ensures that when on a DSDS device, when the VCN-enabled
subscription is not the default/active subscription, the other
subscription's network will never be outscored by the VCN, and thus get
torn down.
Bug: 190761448
Test: atest FrameworksVcnTests
Test: Manual testing to ensure common functionality
Original-Change: https://android-review.googlesource.com/1767050
Merged-In: I8031fab7502880d38420058451df41f47567c458
Change-Id: I8031fab7502880d38420058451df41f47567c458
There were two bugs:
1. In case of the first update, ApexManager removed information about
pre-installed version of the APEX.
2. After an update, getPackageInfo cache wasn't invalidated, which
resulted in getPackageInfo returning stale information.
Bug: 193085724
Test: atest ApexManagerTest
Test: atest StagedInstallInternalTest
Change-Id: I6df7b296cd5d83c93524178f1546855747ea6b07
It's not allowed to install a completely new APEX, hence APEX
installations should be treated as upgrades.
This change allows holders of INSTALL_PACKAGE_UPDATES permission to
silently install APEX upgrades.
Bug: 193085724
Bug: 190802380
Test: atest StagedInstallInternalTest
Change-Id: Idde7644122eeae6c444e3520f66ab1546ba7fdf6
This change declares underlying networks for the VCN for the purposes of
app data accounting
Bug: 190620024
Test: atest FrameworksVcnTests
Original-Change: https://android-review.googlesource.com/1750241
Merged-In: Ida2cd5975250604064b0baed00bc7c201ea97c5e
Change-Id: Ida2cd5975250604064b0baed00bc7c201ea97c5e
This is important for multi-user devices that have different
applications or versions installed for each user.
Bug: 190483583
Test: atest FrameworksServicesTests:CompatConfigTest
Test: atest FrameworksServicesTests:OverrideValidatorImplTest
Test: atest FrameworksServicesTests:PlatformCompatTest
Test: atest PlatformCompatGating:PlatformCompatPermissionsTest
Change-Id: I74c061001efbbd9699087e603a580cb2538891ec
NotoColorEmoji.ttf has 'by-exception-only' license and should not have
been depended by vts.
This CL swaps it with a fake NotoColorEmoji.ttf font.
testdata/NotoColorEmoji.ttx is based on
cts/tests/tests/text/assets/fonts/samplefont.ttx
Bug: 191914223
Test: atest UpdatableSystemFontTest
Change-Id: If5f57471b492cae1eb35f6d4a4ac0054270b23a3
- and update some test assumptions accordingly (live tile)
Bug: 185934639
Test: ReOpenImeWindowTest
Change-Id: If6f40dce174bef5ccc3c3731764607a5826b4762