Per API council feedback, we are making changes to include only the
namespace in the system API defined in DeviceConfig.java. Strings which
define property names should be defined in code local to the feature
instead.
Bug: 126411407
Test: atest FrameworksCoreTests:DeviceConfigTest
Change-Id: Ia51733a0fcb061e754ea16c8496100fad338b614
and the mechanism to use it
Since both starts and bindings might be contributing to the service
being whitelisted, track the state in ServiceRecord and update
the parent process accordingly when changes happen.
While we're at it, add that flag for bindings to accessibility
services, voice interaction services and QSTiles.
Also, make the timeout constant configurable for start-based
whitelisting.
Bug: 124298522
Bug: 123495976 (accessibility services)
Bug: 123337181 (paying via NFC, like Google Pay)
Bug: 122887611 (binding to InCallService)
Bug: 127774234 (binding to QSTile)
Bug: 124288681 (binding to voice interaction services)
Test: atest WmTests:ActivityStarterTests
Test: atest AccessibilityServiceConnectionTest
Test: manual with:
1) notifications from calendar and dynamite to test service starts
whitelisting
2) enabling talkback and livetranscribe to test service bindings
whitelisting
3) adding the LastPass QSTile and clicking on it
Change-Id: I8b6f23f999683920411ca40ab5b25c688a4f7055
I suppressed the font error during resource loading only if the
targetSdkVersion is API 28 or before, but it turned out that this
makes developers hard to use font resources since:
- We don't give a list of supported font files and OEM may extend/shrink
the font support.
- There is no way to resolve this error during layout inflation.
So, now always supress the IllegalArgumentException during building
Typeface in resource loading.
Bug: 127714175
Test: atest CtsTextTestCases
Test: atest CtsGraphicsTestCases
Test: atest FontsContractTest
Test: atest CtsWidgetTestCases
Change-Id: I08b9f27aaf25ff491fa36d0a4befb3c6e64abfcf
Adds @TestApi for all system apis needed for RollbackTests.
Removes @SystemApi for RollbackManager.expireRollbackForPackage and
RollbackManager.reloadPersistedData, which were always intended to be
used solely for testing.
Bug: 127282563
Test: atest RollbackTest StagedRollbackTest
Change-Id: I183b8a484b4a08f36fc19d64241ab408d28c64ca
Per API council feedback, we are making changes to include only the
namespace in the system API defined in DeviceConfig.java. Strings which
define property names should be defined in code local to the feature
instead.
Bug: 126411407
Test: atest FrameworksCoreTests:DeviceConfigTest
atest FrameworksServicesTests:DexManagerTests
Change-Id: I6af1b6f2d0071f800fa33efa2a548577635dd013
Add a listener which replies with an object containing one or many flags
as well as parsing methods. This should replace the previous listener,
but we need to keep the old one around for now because Google Play
services is reliant on it.
Bug: 126414261
Test: atest FrameworksCoreTests:DeviceConfigTest
Change-Id: Ie8d32eced077a8df17be824e94271bd6b15fae3d
This reverts commit 569be7df9d.
Reason for revert: b/124346411
Please use package filter for now. A mix of class and package filter is not supported by AJUR as of now. Once that bug is fixed, we can revert the revert.
Change-Id: I12981a97e392a3bc5e0027b3c53cf915b7d480e1
Added documentation for the different namespaces in
DeviceConfig.Rollback with emphasis on the difference between them.
Added flag type and namespace to the documentation of each flag.
Fixes: 127282774
Test: build
Change-Id: If62a94a0d2775d709af5aebc07b82154842853bc
* changes:
Control revoke-on-upgrade behavior for loc perm
Revoke location permissions on upgrade from Pre-Q
No special case for location permission
Inherit flags when inheriting permission state
By default: Revoke on upgrade, but can be disabled by setting the
location_permissions_upgrade_to_Q_mode to anything but 0.
Fixes: 127285709
Test: Upgraded from P to Q with and without
location_permissions_upgrade_to_Q_mode set
atest --test-mapping frameworks/base/core/java/android/provider:presubmit
Change-Id: I4dd1772e78f46c881a5f747fcf61583beec2d6a2
- Use 1/0 instead of true/false for the settings value.
- Improved logging / internal logic by splitting disabled by settings and device config.
- Other minor fixes.
Test: atest CtsContentCaptureServiceTestCases
Bug: 119264902
Change-Id: I51b99588f823c4e1eaf496841efd45757e4258be
Add a second method to the OnPropertyChangedListener which returns a
Properties object instead of a single flag. This object will hold only
one flag for now (Q) but easily supports multiple flags at a time when
we are ready to support atomic writes (R). This Properties object also
contains typed getters, so we don't force every single client to
dupliate the parsing and default value logic.
For now, the new method in the change listener has a default
implementation which calls the old method. This ensures that no one's
code is broken (because they aren't implementing the new method) and no
one's feature stops working (the old method is still being called).
This is part 1 of a 4 step migration from the single flag callback to
the new Properties callback.
Part 2 will update the OneTimeDeviceConfigListener in the gts/ repo to
override both the old and new callback methods.
Part 3 will update the DeviceConfig.OnPropertyChangedListener to provide
a default implementation for the old method instead of a default
implementation for the new method. At the same time, all implementations
of DeviceConfig.OnPropertyChangedListener in the core repo will be
updated to implement the new method instead of the old method.
Part 4 will update the OneTimeDeviceConfigListener in the gts/ repo to
override only the new callback method and delete the implementation of
the old callback method.
These 4 parts have to happen in order.
Bug: 126414261
Test: atest FrameworksCoreTests:DeviceConfigTest
Change-Id: If75bce326dcdbc38e22d95982e57ad466cbecdb6
Link Probing: Update comment to reflect that link probing is enabled by default
Bug: 112029045
Test: compiles
Change-Id: I40f79aec2a0898a74b2a8b9073990635c3a3009a
Wifi Panel is the fourth Settings Panel, which hosts Wifi related settings.
Currently the panel only holds the Wifi slice, but is open to future
additions.
Also add metrics constants for panel logging.
Test: atest SettingsPanelTest
Bug: 126894142
Change-Id: Ie72b3b52ea89047dfde77daa35ff2f95c655dbb7