Add configurable doze gesture. OEMs should define the gesture type
on a device overlay.
Bug: 111414690
Test: look at logs in adb shell dumpsys activity service com.android.systemui
Test: manual with alternative sensor event
Change-Id: I048b99b53151427006e42eb6b4780a420020cd78
The current ambient display design doesn't make sense when the
display is not 'always on', let's wake-up directly to the lock
screen instead.
Change-Id: I217720dcf01a507f43e9da6e1970b2246fb75211
Test: double tap from AOD or screen off
Test: lift from AOD or screen off
Test: receive pulsing notification, long press
Fixes: 73148491
Fixes: 111881300
Bug: 111414690
For packages:
android.providers.settings
android.provider
This is an automatically generated CL. See go/UnsupportedAppUsage
for more details.
Exempted-From-Owner-Approval: Mechanical changes to the codebase
which have been approved by Android API council and announced on
android-eng@
Bug: 110868826
Test: m
Change-Id: I3865ac184fcb6f52c6bfab9729611b065b27722e
To support new storage features in Q, we need to start tracking the
"owner" of each inserted file. This change introduces the schema
change to insert the column, including logic to derive values for
existing well-known package-specific paths. Populate the column for
any newly inserted media based on the calling package.
Bug: 111893193
Test: adb shell am instrument -w com.android.providers.media.tests
Change-Id: Ibf5656423c22e7e540ab4a3a3efb99b8af944e16
Logging activity starts to TRON, but only if the caller app
doesn't have any foreground activity present.
Example event:
08-03 15:21:30.813 1231 3220 I sysui_multi_action: [757,1513,758,4,805,1533306090812,1514,10147,1515,com.google.android.talk,1516,1018,1517,0,1518,1000,1519,1000,1520,0,1521,10147,1522,com.google.android.talk,1523,1018,1524,0,1525,pendingintent:u0a12:com.google.android.talk/com.google.android.apps.hangouts.phone.ConversationActivity,1526,com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity,1527,1,1528,com.google.android.apps.hangouts.phone.conversationlist,1540,1,1541,com.google.android.apps.hangouts.phone.BabelHomeActivity,1542,3146240,1543,{com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity},1544,com.google.android.talk/com.google.android.apps.hangouts.phone.BabelHomeActivity,1545,com.google.android.talk,1546,1,1547,0,1551,0,1552,0]
Bug: b/111866309
Context: go/activity-starts-logging-tron
Test: 1) enable logging with: adb shell settings put global activity_starts_logging_enabled 1
2) open some activities and observe: adb logcat -b events | grep "sysui_multi_action: \[757,1513"
Test: atest FrameworksServicesTests:ActivityStarterTests
Change-Id: Id63806a2d08a50f404268194a05c6e94bd7e9724
The autofill service setting was cloned from the personal
profile to the managed profile in ag/2126240 to fix a bug where the
Settings UI did not control the managed profile. That fix caused
unintended interactions between both profiles. The setting has
now been 'uncloned' and a separate UI control introduced for each
profile in ag/4666600.
BUG: 3803359
Test: Tested manually by setting up a work profile and verifying that
the setting can be changed independently.
Change-Id: I7b5cac69cb8b4b0782538cb86f818904d6ad238d
Scan throttling affects apps which are used by testers for survey-like
application. Add a hidden setting which can be toggled via adb commands
to turn off all scan throttling.
Bug: 111763749
Test: Unit tests
Test: `adb shell settings put global wifi_scan_throttle_enabled 0` on
user build.
Change-Id: I6c9a468c573239914b88de0afcdd7e477429cb16
The following Settings are being moved to Settings.Secure
from Settings.Global since they are settings that exist
per user
- CHARGING_SOUNDS_ENABLED
- CHARGING_VIBRATION_ENABLED
- ZEN_DURATION
- SHOW_ZEN_UPGRADE_NOTIFICATION
- SHOW_ZEN_SETTINGS_SUGGESTION
- ZEN_SETTINGS_UPDATE
- ZEN_SETTINGS_SUGGESTION_VIEWED
zen_duration used to be a global setting -> move it to
Settings.Secure since users can set different values
Fixes: 110926544
Test: make RunSettingsLibRoboTests -j40 ROBOTEST_FILTER=ZenDurationDialogTest
Test: manual upgrade
Change-Id: Ifa36affe3e52e67a54698a8cf2c3424343877179
Keeps existing public APIs intact, but rewrite the internal to pave
the way for storage changes coming in Q. All thumbnail generation
and reading now happens in MediaProvider, since apps won't have
direct access to MiniThumbFile files in Q.
Instead, InternalThumbnails now uses openTypedAssetFileDescriptor()
to open the original Uri, but with an EXTRA_SIZE indicating that
it'd like a thumbnail of a specific size. This uses best-practices
which allow apps obtaining a Uri permission grant to a specific
media Uri to request a thumbnail of that media without additional
permissions. This also lets us use CancellationSignal to cancel
thumbnail requests that are no longer needed, and we start checking
this signal at each query() point internally.
Move internals to use ExecutorService pattern, which will let us
expand the thread pool in a future CL based on device capabilities.
Previous logic that asynchronously generated thumbnails after certain
actions is now replaced with simpler invalidation. This paves the
way for us to move proactive thumbnail generation to be driven by an
idle maintenance service, to be better stewards of battery life. We
continue to generate thumbnails on-demand when not yet cached.
ThumbnailUtils already handles extracting EXIF thumbnails, so we don't
need to duplicate that work locally.
Flag that enables dumping of all raw SQL for debugging purposes on
a per-process basis.
Bug: 111268862, 111890672
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ibcdbc564c8fee09ddd33ebccc470fa5cbdff97b4
Currently, these preferences can only be changed through 'cmd autofill', but
moving them to the Settings provider will let us manage them through the
Settings -> Developer Options screen:
- AUTOFILL_LOGGING_LEVEL
- AUTOFILL_MAX_PARTITIONS_SIZE
- AUTOFILL_MAX_VISIBLE_DATASETS
Test: manual verification
Test: atest CtsAutoFillServiceTestCases FrameworksCoreTests:SettingsBackupTest
Bug: 65700540
Change-Id: I6c864d032bc0b2c3b7c24f300af37883adbaf0d0
Previously battery history is kept in the in-memory mHistoryBuffer
with size of 512KB (96KB on low memory device). When the buffer is
close to full we drop certain types of history. When the buffer is
full the whole buffer is reset and we lost elder history. On a
device with long battery life this problem is more frequent.
This CL changes mHistoryBuffer to 128KB (64KB on low memory device).
When the buffer is full, it is saved to history file on file system.
By default we allow 32 history files (64 history files on low-memory
device) which gives us 4MB history (compare to 512KB today).
The MAX_HISTORY_BUFFER and MAX_HISTORY_FILES can be remote configured
through GServices or P/H.
In case of history exceeding 4MB, the oldest history file is deleted
and new history file is open.
This change increases battery history by using disk file and the
chance of losing history is greatly reduced.
Bug: 67297625
Test: adb shell dumpsys batterystats --history
Change-Id: Id9aafea761649d7323b97d1e44135f7880a95414
The CL was intended only for P as a temporary solution.
This reverts commit f0800fa3bd.
Test: switch wallpapers, observe theme
Bug: 110758454
Change-Id: If10e4d87b6ddac10063b2671abd99e0baccdf92e
For instance, to enabled detailed tracking locally.
adb shell settings put global binder_calls_stats detailed_tracking=true
Also adds the ability to turn off data collection completely and
changing the sampling interval. Uploading data through westworld can
re-use the same flag once implemented.
Test: Unit tested
Change-Id: I808c9902b8124ab643d9b197703d537da040ae3e
This CL logically reverts the following CL (and some subsequent
changes) to stop restoring spell checker related secure settings.
* Ib8382f0296f0726b64494d3b1fd8237e13adb540
06cbaddb87
Reason for revert:
Although we believe it would be great if we can seamlessly migrate to
a new phone with keeping spell checker related settings, there still
remain several tricky scenarios.
* We are not ready to distinguish whether a certain spell checker
related setting was explicitly set by the user or programmatically
set by some components in the previoud device. This includes the
case where TextServicesManagerService (TSMS) itself automatically
updates those settings e.g. by selecting a default spell checker
service from the pre-installed ones. We are not sure if trying to
migrate such an auto-selected setting to a new device actually
makes sense, especially if it happens without any user
confirmation.
* We have a strict rule about what spell checker service can be
selected automatically, and the rule has been that only
pre-installed spell checker services can be automatically selected
by the system, unless some system components that have
WRITE_SECURE_SETTINGS permission overrides it. Mechanically
selecting a spell checker service just because it was enabled in
the previous device may not fit this model well.
* Unlike IMEs, currently the Android OS allows only one spell checker
service to be enabled. This means that if the new device doesn't
have the corresponding spell checker service, the user will lose
spell checking functionality even if the device pre-installs
functional spell checker service. This problem is hard to notice
because unlike IMEs spell checker service does not have its own UI.
* Also unlike IMEs, spell checker related secure settings are still
hidden and not published as public APIs. Those settings do not
have no official compatibility story across devices yet.
* It is also possible that the default spell checker service in the
previous device is not published to all the devices thus there is
no way for the the new device to install it.
This CL therefore excludes spell checker related settings from
backup/restore, as a short-term answer to above scenarios until we
come up with better ideas to deal nicely with them.
Bug: 110367605
Test: atest FrameworksCoreTests:android.provider.SettingsBackupTest
Test: atest FrameworksCoreTests:android.provider.SettingsValidatorsTest
Change-Id: I8e4a0d4b3b758a84d5a075fa52851b1e8dd707eb
- Add secure setting to enable/disable in call notifications
- Can toggle system setting using the following adb command:
adb shell settings put secure in_call_notification_enabled [0/1]
Bug: 71586014
Test: manual
Change-Id: I32e1d1d6dcae806e655ae6875a43d07ca83e77f4
This CL fixes a bug that COMPONENT_NAME_VALIDATOR is mistakenly used
for SELECTED_SPELL_CHECKER_SUBTYPE secure settings due to a comment
bug. ANY_INTEGER_VALIDATOR should be used instead because it stores
the hashcode of SpellCheckerSubtype.
This CL also addresses the comment bug, which caused this issue.
Fix: 110363012
Test: atest FrameworksCoreTests:android.provider.SettingsBackupTest
Test: atest FrameworksCoreTests:android.provider.SettingsValidatorsTest
Test: manually verified as follows
1. In a source device, complete the setup wizard (without restoring
the previous settings) then run 'adb shell bmgr backupnow --all'
2. In a destination device, restore settings by choosing the option
from a cloud backup.
3. Check logcat. Make sure that the following message is not shown.
SettingsBackupAgent: Attempted restore of selected_spell_checker_subtype setting, but its value didn't pass validation, value: 0
Test: manually verified as follows
1. In a source device
1.1. complete the setup wizard without restoring the previous
settings
1.2. Open Settings -> System -> Languages & input -> Advanced
-> Spell checker -> Languages
1.3. Select 'French'
1.4. adb shell settings get secure selected_spell_checker_subtype
-> Make sure it shows '102517'
1.5. adb shell bmgr backupnow --all
2. In a destination device
2.1. Restore settings by choosing the option from a cloud backup.
2.2. adb shell settings get secure selected_spell_checker_subtype
-> Make sure it shows '102517'
Change-Id: I560395a2ccd5bcf1bf7446123b892b23ab14f9f5
Use noteOp instead of checkOp as checkOp doesn't consider
background status.
Watch location permission changes caused by background status.
Restrict age of last location for foreground-only apps.
Bug: 80318398
Test: Manual
Change-Id: I3499d4150478b6f501966953f8e4a08169f3557c
Add a histogram of link speed values with count and rssi values.
Collect this metrics only when enabled in settings. By default, we don't
collect this metrics.
Bug: 78354985
Test: Settings Unittest
Change-Id: I683dfb45a01de5e1243d612a117a5544b0d4dc05
Generate WifiIsUnusableEvent when there is a data stall or a firmware
alert. In WifiIsUnusableEvent, store metrics related to time, packet
counts, trigger reason, and score.
Also, log ExperimentValues that we plan to change through global
settings varaible.
This logging is enabled by setting WIFI_IS_UNUSABLE_EVENT_METRICS_ENABLED
to 1. By default, this metric is not collected.
Manual Check Process:
- Connect to a network
- adb shell settings put global wifi_is_unusable_event_metrics_enabled 1
- adb shell dumpsys wifi wifiMetricsProto
- Move away from the ap to trigger data stall
- adb shell dumpsys wifi | grep -10 WifiIsUnusableEventList
- Verify that there is a WifiIsUnusableEvent
Bug: 77603216
Test: Unittest (settings core/tests/coretests).
Test: Manual Check.
Change-Id: I2d8425a420f5ba18e3eee0e11b6f35f6239a97b2
Add a button on power menu to launch emergency dialer.
Add FASTER_EMERGENCY_PHONE_CALL_ENABLED to SettingsBackupTest blacklist.
Test: Manually
Change-Id: I9c920e31433c0ac23165f917d8dd2befaaa4938d
Bug: 80376488
Fixes: 72715022
Test: With two devices, set up one, back up onto the other.
SUW for Assist Gesture does not get skipped
Test: atest SettingsBackupTest
Change-Id: Id7348542a618c0366f89c47833af6f66bf52b18f