Commit Graph

2697 Commits

Author SHA1 Message Date
Jeff Sharkey
0ab7007631 resolve merge conflicts of 358f0d4fc8 to master
Bug: 174932174
Test: I solemnly swear I tested this conflict resolution.
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Change-Id: I9262a08ffc1ccede8e519d0eed90ed2bfcf0232c
2020-12-08 11:01:05 -07:00
Jeff Sharkey
0ace970e19 Temporarily replace "android.com" accounts.
We're temporarily blocked on internal Gerrit tooling to support
relaxed OWNERS validation, so this change temporarily replaces all
"android.com" accounts with "google.com" equivalents.

Bug: 174932174,175111824
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Change-Id: I114f2a40cee1b65e21250da7372e11c18cd73e25
2020-12-08 17:54:13 +00:00
Jeff Sharkey
c7c4a74a78 Improve OWNERS coverage across frameworks/base/. am: fab0ab3c9c
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1519383

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0211462ecbcd9ad66f66af87e31cf12e1582fc65
2020-12-08 16:01:16 +00:00
Jeff Sharkey
fab0ab3c9c Improve OWNERS coverage across frameworks/base/.
As general background, OWNERS files expedite code reviews by helping
code authors quickly find relevant reviewers, and they also ensure
that stakeholders are involved in code changes in their areas.

Some teams under frameworks/base/ have been using OWNERS files
successfully for many years, and we're ready to expand them to cover
more areas.  Here's the historical coverage statistics for the last
two years of changes before these new OWNERS changes land:

-- 56% of changes are fully covered by OWNERS
-- 17% of changes are partially covered by OWNERS
-- 25% of changes have no OWNERS coverage

Working closely with team leads, we've now identified clear OWNERS on
a per-package basis, and we're using "include" directives whenever
possible to to simplify future maintenance.  With this extensive
effort, we've now improved our coverage as follows:

-- 98% of changes are fully covered by OWNERS
-- 1% of changes are partially covered by OWNERS
-- 1% of changes have no OWNERS coverage

This specific change is automatically generated by a script from
detailed ownership information confirmed by team leads.

Bug: 174932174
Test: manual
Exempt-From-Owner-Approval: refactoring with team leads buy-in
Merged-In: I9789c97c1de8e5d962b48c29c57d82fe83729eba
Change-Id: I9789c97c1de8e5d962b48c29c57d82fe83729eba
2020-12-08 08:36:27 -07:00
Xiangyu/Malcolm Chen
10ce9349ad Merge "Expose CarrierMessagingServiceWrapper as System API." 2020-12-04 23:03:12 +00:00
Jeff Sharkey
db4ae71beb Merge changes from topic "nov30"
* changes:
  Hand-migration to TypedXml interface.
  Mechanically apply TypedXml refaster template.
  Mechanical refactoring to new typed XML classes.
  Additional hand-migration to TypedXml interface.
  "Resolve" both human-readable and binary XML.
2020-12-04 21:32:44 +00:00
Malcolm Chen
80054bd6f7 Expose CarrierMessagingServiceWrapper as System API.
Also adding Executor when callback, according to API council's
feedback.

Bug: 172087216
Test: build
Change-Id: Iaff6c75c1f92840424deeffbc4504a3ecf9bc1ee
2020-12-04 11:52:50 -08:00
Julia Reynolds
4fddc79580 Allow listeners to know about lockscreen notifs
Specifically, whether user and device policy manager settings
means that a notification should be hidden or redacted on
the lockscreen

Test: cts verifier
Fixes: 173090853
Change-Id: Ic09a2b05a1acce5d3d63732861bdc69b274a1eba
2020-12-03 15:33:44 +00:00
Jeff Sharkey
a2c132d9c6 Hand-migration to TypedXml interface.
Previous changes have applied mechanical refactorings, but this change
hand-migrates the remaining logic which was too complex to identify.

This change should have no behavior change; famous last words.

Bug: 171832118
Test: manual
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: I85cd830eb6bfde18fca6e73ee7adfdc385a890de
2020-12-02 13:55:35 -07:00
Xin Li
d31ee38811 Merge rvc-qpr-dev-plus-aosp-without-vendor@6881855
Bug: 172690556
Merged-In: I78222391b83a4add8e964340ec08bb8a1306e1c6
Change-Id: I28bbf40820674675ccf765c912aa8140d3f74ab2
2020-12-02 00:38:58 -08:00
Joanne Chung
1e81779e17 Merge "Add needed tests in TEST_MAPPINGs under autofill related paths" 2020-12-02 03:17:23 +00:00
Jeff Sharkey
8f43151721 Mechanically apply TypedXml refaster template.
This is a purely mechanical CL that applies the output of the
recently added refaster templates to help guide towards more
efficient TypedXml methods.  There is no behavior change.

Bug: 171832118
Test: manual
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: Ic95dd3de77c60482ad36b31706e6b701929f40b3
2020-11-30 20:45:40 -07:00
Jeff Sharkey
236c03b5c3 Mechanical refactoring to new typed XML classes.
Related changes are introducing new TypedXmlSerializer and
TypedXmlPullParser interfaces which offer efficient access to
primitive attributes.

Bug: 171832118
Test: manual
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: Ibd93f353ff3cb1f0b7073ebbeae17fe5194b046b
2020-11-30 20:45:25 -07:00
Robert Carr
c6036ba887 WallpaperService: Respond to WM protocol change.
The client is now responsible for updating the size of its own Surface.
When we updated ViewRootImpl we forgot to make this change for wallpaper
service.

Bug: 172346563
Test: Existing tests pass.
Change-Id: I2107106c8057151f3fa0d9761ce88abeefc58350
2020-11-30 23:50:04 +00:00
Joanne Chung
b6a336826a Add needed tests in TEST_MAPPINGs under autofill related paths
Add basic tests into TEST_MAPPING to make sure the tests can be
tested in presubmit. There is a 30 minutes limitation for presubmit
which doesn't allow to run all autofill tests. We only choose some
tests and add @Presubmit annotation to the tests that want to verify
in presubmit.

The tests contains basic fillUi, saveUi, authentication, filtering,
fill history, virtual view, compat mode. Skip webview because it is
a high flaky fail tests. The presubmit time is 20-30 minutes for now,
we can add/delete the chosen tests in presubmit when we receiving the
fails.

Bug: 154961272
Test: TreeHugger
Change-Id: I25684a2122c4e705b75b9a30c3b7a61337bbd1a7
2020-11-25 19:46:36 +08:00
Chavi Weingarten
3f7cb9bcf5 Merge "Updated ImpressionAttestation API signatures" 2020-11-20 16:50:20 +00:00
chaviw
2252f0b197 Updated ImpressionAttestation API signatures
1. Updated verifyImpressionToken to send back a boolean instead of an
integer. Updated docs
2. Added salt value to generateImpressionToken and verifyImpressionToken

Test: Builds
Bug: 155825630
Change-Id: I672500ef2337796775f9d9f32e626df69a886f9f
2020-11-19 11:35:05 -08:00
Fabian Kozynski
83be4ae5ad Empty message queue on TileService#onDestroy
onDestroy is called by system_server asynchronously on the main thread.
If there are queued messages (from the binder interface), remove them.
This follows the contract that methods in the service will not be called
after onDestroy

Test: manual with test tile
Fixes: 172511340

Change-Id: I7d46c065d5a9597ce1d44bc5707e79b302b201f6
2020-11-19 13:07:42 -05:00
chaviw
ade3051c19 Bind ImpressionAttestationService to system
Added ImpressionAttestationController in WindowManager to allow the
ImpressionAttestationService to bind to system.

Added helper methods in ImpressionAttestationController:
1. Make requests blocking since they will come from a binder request and
can block without causing issues in WindowManager

2. Added timeout so the service will get torn down after 10s of
inactivity

3. Added cache of hashing algorithms list so they can be retrieved
without making another IPC call.

Test: Builds
Bug: 155825630
Change-Id: Ic80206fb84a8f020f45d5aa053ee86a005da4591
2020-11-18 10:46:58 -08:00
Sean Pont
3461caef4e Fix broken Quick Access Wallet CTS test
Fixes: b/173332407
Test: manual - start quick access wallet
Test: atest
CtsQuickAccessWalletTestCases:android.quickaccesswallet.cts.QuickAccessWalletClientTest#testCreateWalletIntent_parsesXmlAndUsesCorrectIntentAction
-- --abi x86

Change-Id: Id1da76c184690798c5ece35c479b92f2ae7c6936
2020-11-17 10:31:35 -08:00
Aurimas Liutikas
e1bb600fc7 Merge "Remove legacy style metalava suppression" 2020-11-16 17:40:07 +00:00
Aurimas Liutikas
bdd6c53abb Merge "Suppress all hidden abstract methods in constructable classes." 2020-11-13 02:56:37 +00:00
Aurimas Liutikas
d23189b998 Suppress all hidden abstract methods in constructable classes.
Having a hidden abstract method for a class that can be extended
means that public implementors cannot implement these hidden methods
posing a risk that custom implementations will not have required
abstract methods resulting in an exception.

Bug: 151134792
Test: make update-api
Change-Id: I758d12465fabc671be19bedeeceb16885de23c87
Merged-In: I758d12465fabc671be19bedeeceb16885de23c87
Exempt-From-Owner-Approval: large scale suppression of existing issues,
    no-op in terms of behavior
2020-11-13 02:56:20 +00:00
Aurimas Liutikas
46a165215b Remove legacy style metalava suppression
@SuppressLint("Doclava125") is a legacy way of suppressing
RequiresPermission check. Updating to the new style of suppression
so metalava no longer has to support the legacy mode.

sed -i "s/@SuppressLint(\"Doclava125/@SuppressLint(\"RequiresPermission/" \
core/java/android/app/admin/DevicePolicyManager.java \
core/java/android/hardware/hdmi/HdmiControlManager.java \
core/java/android/hardware/location/ContextHubManager.java \
core/java/android/hardware/usb/UsbDeviceConnection.java \
core/java/android/net/TrafficStats.java \
core/java/android/os/RecoverySystem.java \
core/java/android/os/storage/StorageManager.java \
core/java/android/service/persistentdata/PersistentDataBlockManager.java \
location/java/android/location/LocationManager.java \
media/java/android/media/AudioManager.java \
telecomm/java/android/telecom/TelecomManager.java \
telephony/java/android/telephony/CarrierConfigManager.java \
telephony/java/android/telephony/TelephonyManager.java \
wifi/java/android/net/wifi/RttManager.java \
wifi/java/android/net/wifi/WifiScanner.java

Test: make
Exempt-From-Owner-Approval: No-op change
Merged-In: I6d5df95cfca2950ea86872d2f0afc1ba828841dc
Change-Id: I6d5df95cfca2950ea86872d2f0afc1ba828841dc
2020-11-12 18:30:12 -08:00
Aurimas Liutikas
1394a019e7 Remove legacy style metalava suppression
@SuppressLint("Doclava125") is a legacy way of suppressing
RequiresPermission check. Updating to the new style of suppression
so metalava no longer has to support the legacy mode.

sed -i "s/@SuppressLint(\"Doclava125/@SuppressLint(\"RequiresPermission/" \
core/java/android/app/admin/DevicePolicyManager.java \
core/java/android/hardware/hdmi/HdmiControlManager.java \
core/java/android/hardware/location/ContextHubManager.java \
core/java/android/hardware/usb/UsbDeviceConnection.java \
core/java/android/net/TrafficStats.java \
core/java/android/os/RecoverySystem.java \
core/java/android/os/storage/StorageManager.java \
core/java/android/service/persistentdata/PersistentDataBlockManager.java \
location/java/android/location/LocationManager.java \
media/java/android/media/AudioManager.java \
telecomm/java/android/telecom/TelecomManager.java \
telephony/java/android/telephony/CarrierConfigManager.java \
telephony/java/android/telephony/TelephonyManager.java \
wifi/java/android/net/wifi/RttManager.java \
wifi/java/android/net/wifi/WifiScanner.java

Test: make
Exempt-From-Owner-Approval: No-op change
Change-Id: I6d5df95cfca2950ea86872d2f0afc1ba828841dc
2020-11-12 18:27:15 -08:00
Aurimas Liutikas
8f8eaec801 Merge "Suppress all hidden abstract methods in constructable classes." 2020-11-12 23:37:21 +00:00
Aurimas Liutikas
796760c56e Suppress all hidden abstract methods in constructable classes.
Having a hidden abstract method for a class that can be extended
means that public implementors cannot implement these hidden methods
posing a risk that custom implementations will not have required
abstract methods resulting in an exception.

Bug: 151134792
Test: make update-api
Change-Id: I758d12465fabc671be19bedeeceb16885de23c87
Exempt-From-Owner-Approval: large scale suppression of existing issues,
    no-op in terms of behavior
2020-11-11 23:16:32 +00:00
Ytai Ben-tsvi
93f4464b76 Merge "Clean up on client death in SoundTriggerService" 2020-11-11 21:31:39 +00:00
Ytai Ben-Tsvi
3559e8693e Clean up on client death in SoundTriggerService
This change adds tracking of SoundTriggerService client death
and frees up resources whenever that happens.

Test: Kill Now Playing process and observer recovery.
Bug: 171026874
Change-Id: Ie31d0a3ed392b1513b4e81ec3c344f4e79adcf52
2020-11-11 10:12:59 -08:00
Chavi Weingarten
d87022d4ab Merge "Initial commit for ImpressionAttestationService" 2020-11-10 17:01:03 +00:00
Malcolm Chen
2d594b71a5 Restructure CarrierMessagingServiceWrapper with better interfaces.
- CarrierMessagingServiceWrapper is now a final class with only
APIs of direct actions on messaging.
- The original abstract parts of the class are now interfaces:
interface CarrierMessagingServiceConnectionCallback
and Runnable callback.
- CarrierMessagingCallbackWrapper is renamed to
CarrierMessagingCallback

Bug: 172087216
Test: build and manual
Change-Id: I1760623543b929a51ce26dc7dcc5f8ebe7fd9732
Merged-In: I1760623543b929a51ce26dc7dcc5f8ebe7fd9732
2020-11-09 21:54:09 -08:00
chaviw
4ecd43d5ce Initial commit for ImpressionAttestationService
Created an ImpressionAttesationService AIDL interface and implemented
the methods that are needed for the ExtServices module.

Test: Builds
Bug: 155825630
CTS-Coverage-Bug: 171926232
Change-Id: Id4b359d3daa72cf0548d8254cacae313f34ac763
2020-11-04 17:44:19 -08:00
Eugene Susla
3f1e82b12c Merge "Disregard annotation params for stale dataclass detection" 2020-11-04 23:57:15 +00:00
Eugene Susla
ddb2681455 Disregard annotation params for stale dataclass detection
Annotation processor seens annotation args with constants already inlined,
making it challenging to compare to the souce-generated metadata that contains
initial expressions.

For now just ignoring args for all non-DataClass annotations to prevent false positives

Test: . frameworks/base/tests/Codegen/runTest.sh
Exempt-From-Owner-Approval: changing metadata on multiple files
Change-Id: I640816ae0f20f36b1b828bc2161f53788c4a4dae
2020-11-04 12:40:58 -08:00
Mathew Inwood
5d123b6775 Add maxTargetSdk restriction to unused APIs.
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.

Bug: 170729553
Test: Treehugger
Merged-In: I626caf7c1fe46c5ab1f39c2895b42a34319f771a
Change-Id: I54e5ecd11e76ca1de3c5893e3a98b0108e735413
2020-11-04 09:45:53 +00:00
Malcolm Chen
38d5e091d0 Restructure CarrierMessagingServiceWrapper with better interfaces.
- CarrierMessagingServiceWrapper is now a final class with only
APIs of direct actions on messaging.
- The original abstract parts of the class are now interfaces:
interface CarrierMessagingServiceConnectionCallback
and Runnable callback.
- CarrierMessagingCallbackWrapper is renamed to
CarrierMessagingCallback

Bug: 172087216
Test: build and manual
Change-Id: I1760623543b929a51ce26dc7dcc5f8ebe7fd9732
2020-11-03 14:00:25 -08:00
Julia Reynolds
1bac483432 Merge "Update api name for clarity" 2020-10-29 15:24:06 +00:00
Mathew Inwood
8e742f928e Add maxTargetSdk restriction to unused APIs.
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.

This is a resubmit of ag/12929664 with some APIs excluded that caused
test failures; see bugs 171886397, 171888296, 171864568.

APIs excluded:
Landroid/bluetooth/le/ScanRecord;->parseFromBytes([B)Landroid/bluetooth/le/ScanRecord;
Landroid/os/Process;->myPpid()I
Landroid/os/SharedMemory;->getFd()I
Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I

Bug: 170729553
Test: Treehugger
Change-Id: I8285daa8530260251ecad6f3f38f98e263629ca7
2020-10-29 11:51:12 +00:00
Hongwei Wang
286c33a5c5 Merge "Revert "Add maxTargetSdk restriction to unused APIs."" 2020-10-28 23:58:21 +00:00
TreeHugger Robot
f4896df858 Merge "Some updates to DND logging" 2020-10-28 20:33:12 +00:00
Hongwei Wang
050275cd83 Revert "Add maxTargetSdk restriction to unused APIs."
This reverts commit 72f07d6a8a.

Reason for revert: Droidcop-triggered revert due to breakage https://android-build.googleplex.com/builds/quarterdeck?testMethod=testAppZygotePreload&testClass=android.app.cts.ServiceTest&atpConfigName=suite%2Ftest-mapping-presubmit-retry_cloud-tf&testModule=CtsAppTestCases&fkbb=6936597&lkbb=6936969&lkgb=6936551&testResults=true&branch=git_master&target=cf_x86_phone-userdebug>, bug b/171886397

Bug: 171886397
Change-Id: Ibe0f0430a3451477c1ee8ef56a596e91ea1e7672
2020-10-28 20:16:22 +00:00
Nikita Dubrovsky
909bb8a045 Merge "Use a separate code path for rich content in augmented autofill" 2020-10-28 18:43:30 +00:00
Julia Reynolds
79f7901b52 Some updates to DND logging
Store more messages & clean up some formatting so the log is easier
to read

Test: manual
Bug: 170565565
Change-Id: I195109e136cb10f0ff7dd35c883134cebdbfddad
2020-10-28 14:34:08 -04:00
Julia Reynolds
c361d7b5e7 Update api name for clarity
Test: cts
Fixes: 170705349
Change-Id: Id1355e8c93e2b88f701834c06669ed390cd503fb
2020-10-28 16:06:06 +00:00
Nikita Dubrovsky
00d2ce0b6f Use a separate code path for rich content in augmented autofill
Image suggestions (and other rich content) are not handled the same way
as primitive autofill values. These suggestions are also only applicable
to augmented autofill. Therefore, instead of reusing AutofillType and
AutofillValue, we use a separate code path to insert rich content. A
follow-on change will remove AUTOFILL_TYPE_RICH_CONTENT and the
corresponding code on AutofillValue.

Bug: 168837034
Test: Manual and unit tests
  atest CtsAutoFillServiceTestCases:DatasetTest
  atest CtsAutoFillServiceTestCases:InlineAugmentedAuthTest
  atest CtsAutoFillServiceTestCases:InlineAugmentedLoginActivityTest
Change-Id: I4fa3baf2b545908fc25f3a6e28a7addc7004786b
2020-10-27 16:16:06 -07:00
Mathew Inwood
72f07d6a8a Add maxTargetSdk restriction to unused APIs.
These are APIs that have @UnsupportedAppUsage but for which we don't
have any evidence of them currently being used, so should be safe to
remove from the unsupported list.

Bug: 170729553
Test: Treehugger
Change-Id: I4c8fd0006f950de9955242e93968fb0996ceb372
2020-10-27 15:46:07 +00:00
Fabian Kozynski
a26922c44e Merge "Add ThumbnailTemplate" 2020-10-26 14:19:48 +00:00
Jeff Sharkey
305ef9e1cf Migrate hot codepaths to formatSimple().
The recently added TextUtils.formatSimple() can efficiently format
simple strings, roughly 6.5x faster than using String.format().

This change starts using this new method in hot codepaths identified
from pprof traces, and this CL alone should reduce system_process CPU
usage by 0.24%.  Linked bug has detailed pprof screenshots.

Bug: 170978902
Test: atest FrameworksCoreTests:android.text.TextUtilsTest
Exempt-From-Owner-Approval: trivial refactoring
Change-Id: Ie5a21a24be6dfcdb29768fe235e20f050fc111c7
2020-10-22 12:48:13 -06:00
Fabian Kozynski
47113cf2d2 Add ThumbnailTemplate
Adds a template to support controls that display a thumbnail. There's an
active parameter that indicates whether it's a "live" feed.

Test: atest ControliTemplateTest ControlProviderServiceTest
Fixes: 170646657
Change-Id: Iaf5053920a34ab0b0b598be44a5482d832d48688
2020-10-22 10:38:30 -04:00
Jeff Sharkey
1992cdb4de Merge changes from topic "oct16c"
* changes:
  Apply fixes for EfficientStrings.
  Apply fixes for EfficientStrings.
  Apply fixes for EfficientStringsChecker.
  Apply fixes for EfficientCollections.
  Trivial refactor for consistent naming.
  Expand formatSimple() to support widths.
  Refinement of EfficientStringsChecker.
2020-10-21 15:27:15 +00:00