Extracts an abstract class to observe changes in backup parameter settings that
are stored as a comma-separated key value list. This class is
responsible for registering and unregistering a content observer on the
setting and updating local references to the parameters.
Refactor BackupManagerConstants and LocalTransportParameters to use this
implementation. This will also be used for the new backup timeout
setting.
Bug: 74346317
Test: 1) m -j RunFrameworksServicesRoboTests ROBOTEST_FILTER=BackupManagerConstantsTest
2) gts-tradefed run commandAndExit gts-dev -m GtsBackupHostTestCases -t com.google.android.gts.backup.TransportFlagsHostSideTest
Change-Id: Id4c50fbcf7479c925515887e3fa70e166dd9955c
Prepend relevant meta key names (such as Ctrl+) to the shortcut
displayed in a menu.
Do not prepend "Menu+" if the device does not have a hardware Menu key.
Bug: 31045453
Test: run ApiDemos (MenuInflateFromXml), select "Shortcuts", observe
Ctrl+ prepended to shortcuts.
Change-Id: I1a38bd1baf069dd1adb24a26f89c6db6390b8b8d
(cherry picked from commit 0cc2c6b190)
Remove the IPC interfaces so these APIs are only available to other
services running inside system server process only.
Bug: 62264551
Test: runtest frameworks-services -p com.android.server.locksettings
Change-Id: Ic7ac5df5fb977bc68a2c4daafaa3cdaf3ba66fcd
This CL updates both the magnifier and the floating toolbar to use the
dialogCornerRadius attribute for the corner radius of their windows. In
both we use its value defined in the default device theme, rather than
the value defined in the application's custom theme.
Bug: 70848492
Test: atest CtsWidgetTestCases:android.widget.cts.MagnifierTest
Change-Id: Ifcf4cff1f38fd18b7dbb4c1802390e3beb92cd3c
(cherry picked from commit 3dcbc2112d)
Merged-In: Ifcf4cff1f38fd18b7dbb4c1802390e3beb92cd3c
Vendors are allowed to customize these systemconfig tags only.
<library>
<feature>
<privapp-permissions>
This is because the systemconfig tags are essentially the part of system
<-> vendor interface and thus need to be stable (or evolve in a backward
compatible manner) across several Android releases and we would like to
keep the interface as small as as possible.
However, since vendors were allowed to use more tags (like <permission>,
<app-link>, <default-enabled-vr-app>) in Oreo and Oreo-MR1, this
limitation is applied only for newly launching devices whose first API
level is equal to or greater than P.
Bug: 70821981
Test: wahoo is bootable (launched with Oreo)
Test: crosshatch is bootable (launched with P)
Test: adb logcat -s SystemConfig does not show that a tag is not
supported
Change-Id: I371b93a80f3d9728ea6d35022081776a8658d9f3
/odm is a vendor partition other than /vendor. Both partitions are for
HW-specific modules such as HALs. The difference is that /odm is owned
by ODM (usually device manufacturer which designs the board), whereas
/vendor is owned by SoC manufacturer. In other words, /odm partition is
for board-specific customization to the /vendor partition.
Since apps can exist in /vendor/app and /vendor/priv-app, the same has
to be supported for /odm partition.
Bug: 71366495
Test: m -j
Teet: cd frameworks/base/tests/OdmApps; atest .
Change-Id: I1ec8b22b080efdefd67a45ce9c7aeaa2aef350e0
- Check audio attributes on the notificationrecord, not the
notification (to take into account the notification channel audio)
- Allow notifications that use messaging style to be considered a
message for dnd
Test: runtest systemui-notification
Change-Id: I8e6a86ed62089a53fe71000e6d9da00f1c54b59e
Fixes: 74243745
Fixes: 74311423
Bug: 74208750
Test: run android.widget.cts.PopupMenuTest on a large screen device
such as hikey960.
Change-Id: I1c4bca3cfecb012432e6cb89cb4cc0177ccc04f9
This reverts commit d5f7ed9fe9 [1].
Reason for revert:
This is the part 2 of a series of reverts to unlaunch Bug 25752812,
which aimed to improve UX but did not work well.
See I7a2ed6dd39dcd8207d3d94e12cd01d5d67ba4bb5 for the detailed reason
of revert.
[1]: Ie88ce1ab77dbfe03ab51d89c1dc9e0a7ddbb3216
Bug: 66498367
Test: Manually done
Change-Id: I207919e3cb081d77712371f58463a5d423717c8f
This reverts commit 46ac35d09b [1].
Reason for revert:
This is the part 1 of a series of reverts to unlaunch Bug 25752812,
which aimed to improve UX but did not work well.
See I7a2ed6dd39dcd8207d3d94e12cd01d5d67ba4bb5 for the detailed reason
of revert.
[1]: Ia013784a594ad3beaf30976d047f5ac0fa8185be
Bug: 66498367
Test: Manually done
Change-Id: Ifd17b53704b3dff75b6ef3be6835f51271859933
use same cpu stats readers with BatteryStats so that
1) both throttle to avoid too frequent pulls
2) cached value is served within throttle interval to avoid double
pulling by both statsd and BatteryStats
To run unit tests:
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuFreqTimeReaderTest
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuClusterTimeReaderTest
bit
FrameworksCoreTests:com.android.internal.os.KernelUidCpuActiveTimeReaderTest
make -j56 statsd_test && adb sync data && adb shell
/data/nativetest64/statsd_test/statsd_test
Test: cts test, unit test
Bug: 73745189
Bug: 73780619
Bug: 73360959
Merged-In: I10a9bc91ca67fa812f4cd71c4fbd73c1a5ba580e
Change-Id: I10a9bc91ca67fa812f4cd71c4fbd73c1a5ba580e
The deadline is enforced in gatekeeper, which persists after reboot.
Users should not see the lockout timer after rebooting the device if it
was previously in lockout, until an unlock attempt occurs.
Fixes: 66443036
Test: 1) fail pattern five times
2) reboot device
3) go to bouncer, lockout timer should not show
4) upon entering pattern, timeout should show (if done fast enough)
Change-Id: Ie07945b40c2f482fd1df7102ba96283ae9d98d75
System appears in portrait after restart, however rotation
watcher callbacks don't fire leaving user rotate pref stale
from last boot. Reset in onCreate and replace override logic
with policy's natural rotation.
Test: manual
Change-Id: Ia1f1e5f637708e5c678edbb5cbf9f4125e451103
Add power consumed by audio and video hardware to power profile.
Attribute these power to specific app.
Bug: 70531798
Test: PowerProfileTest
Test: BatteryStatsHelperTest
Test: PowerCalculatorTest
Change-Id: I4811efa14ce97983258cd59bfd328181fe95baf4
This reverts commit e77386e8fb [1].
Reason for revert:
The protocol is not yet ready to be exposed and we are still unsure
what is the best approach.
[1]: Ie86edafd1ed68b58f702116f561fc448fdbb57a8
Bug: 7031513
Bug: 72522601
Fix: 74087970
Test: atest CtsInputMethodTestCases
Change-Id: Ia61dc9b3d5b116199382994430fb16ee804942b3
If the user hasn't chosen a preference, the shortcut
will not work on the lockscreen until the user agrees
to use the shortcut. After the user so agrees, the
shortcut will also work on the shortcut.
Bug: 70944865
Test: Adding a test for the new behavior
Change-Id: I41e1238fad43a4432cd341c6808e26ad6e155506
Add ambient display power to power usage calculation.
Corresponding field in power_profile is "ambient.on"
Bug: 70531652
Test: PowerProfileTest
Test: BatteryStatsHelperTest
Change-Id: I4dfad12875af42de9d517c917b6c1e99323c9fbf
Right now if an app is TYPE_APPLICATION_OVERLAY, it gets logged twice
Fix: 73952594
Test: manual test and cts test
Change-Id: Ieca79545c76f0773cb939efd236705a067bb1e6d
Instead of computing the average on the device, upload the
total sum of the latencies. Server can divide by the event count
if it wants to get the average.
Also change the latency buckets to 1 hr, 2 hrs, 4 hrs, 8 hrs and
greater than 8 hrs.
Bug: 70297451
Test: launch an app
dumpsys batterystats --checkin | grep jbd,
Observe the dumped values for the app
Change-Id: Iecda808594fc960fb16fa0407e5875bbc47db43a
KernelCpuProcReader records a horrifying exception when the proc file
does not exist, creating confusion that this is the source of error.
Bug: 74074575
Test: KernelCpuProcReaderTest
Change-Id: Ib35e114cd78e1e9f424adf66da5eb85da9f6fe5f
Recently we successfully removed the restriction that up to one
SpellCheckerService can be active at the same time [1]. This still
makes much sense at high level, but at the ecosystem level there are
still some products / components that depend on the previous behavior
that child profile users can use parent profile's spell checker
service, which was originally introduced as a stopgap solution for
Android N MR1 [2].
Our decision for Android P for now is to revert back to the previous
behavior only when the calling process is running under work
profile.
At the implementation level, we can summarize the new behavior as
follows:
* When TextServicesManager APIs are called from work-profile
processes, those API calls will be evaluated with parent-profile's
user ID to match the previous behavior [2].
* If the currently selected spell checker is not a pre-installed
one, then API calls from work profile will fail to match the
previous behavior [2].
* When TextServicesManager APIs are called from non work-profile
processes, those API calls will continue being evaluated with
calling user ID, as we planned for Android P [1].
* TextServicesData will not be created for child profile users.
[1]: I06c27ef834203a21cc445dc126602c799384527b
06a2624049
[2]: Iae9045ba5baccd04ed68906e7afb9160677ec4a5
095fa37164
Bug: 63041121
Bug: 64718412
Bug: 70922751
Bug: 73609140
Fix: 73862883
Test: atest FrameworksCoreTests:com.android.internal.textservice.LazyIntToIntMapTest
Test: Manually tested with Test DPC as follows:
* When AOSP Spell Checker is pre-installed and the current spell
checker, both main profile and work profile can use AOSP spell
checker.
* When SampleSpellCheckerService is side-loaded and the current
spell checker, only main profile can use
SampleSpellCheckerService.
Change-Id: Ic046f832f203115106409a53418a5746eb6d4939