Commit Graph

1938 Commits

Author SHA1 Message Date
Automerger Merge Worker
4314a0ca65 DO NOT MERGE - Temporary fix to disable augmented autofill requests coming from am: 483da5385f
Change-Id: Ia144921ee6ad424c565ca14713a275b9383e52cb
2020-01-08 01:35:27 +00:00
Beverly
172e20fa16 Update Ranking's equal method [DO NOT MERGE]
[Cherry picked from master]

Include check for whether mVisuallyInterruptive has changed

Test: atest BubbleDataTest
Change-Id: I5c4706667e6ca4cde44ef3671daa24afaf2b14f3
(cherry picked from commit e1541e7ec9)
2019-12-19 12:29:09 -08:00
Adam He
483da5385f DO NOT MERGE - Temporary fix to disable augmented autofill requests coming from
password fields.

Bug: 141703197
Test: atest android.autofillservice.cts.augmented
Change-Id: I09a75ad5674a0cfdb169b49461bfec2a129e781f
2019-12-16 16:39:28 -08:00
TYM Tsai
66121902a5 Fix crash after destroyed
Remove the touch listener while destroyed to avoid causing the
IllegalStateException.

Fixes: 144703050
Test: atest CtsAutoFillServiceTestCases
Change-Id: I04b30fa3cef5bea00a4dbd9957cae8246f09a802
(cherry picked from commit 93e1622365)
2019-12-09 06:18:57 +00:00
Satakshi
b846e83ff5 Assert only one bitmap is provided to ContentSuggestionsService.
Test: Took a screenshot and verified that AiAi gets invoked and the screenshot notification
shows smart actions.
Long press in Overview shows smart actions.
Bug: 141634285

Change-Id: I1e82f8bb837b8b032e6d25032642e47f492eb495
2019-11-19 10:27:11 -08:00
Satakshi
ce35ce9f08 Screenshot Notification Smart Action: AiAi and - Sys UI integration
Create a constant in ContentSuggestionsManager, which will
be used to pass a hardware bitmap to ContentSuggestionsService.
In the presence of this key in the request extras, we skip taking a
snapshot in ContentSuggestionsPerUserService.
Bitmap is extracted from reading this value from extras in
ContentSuggestionsService.

Create ScreenshotNotificationSmartActionsProvider, which is overridden
in GoogleSystemUI.
Calling AiAi is guarded by a device config flag created in cl/277143225.

(cherry picked from commit d2010f2628 and c45d86fc15)

Test: Manually tested the code in this CL and corresponding change in SystemUIGoogle.
Took a screenshot and verified that AiAi gets invoked and the screenshot notification
shows smart actions.
Ran new tests added in this CL
'atest ScreenshotNotificationSmartActionsTest'
'atest ContentSuggestionsPerUserServiceTest'
Bug: 141634285
Change-Id: I439a4be9aac53fb02b566ae4d438afe3edf2b37a
Merged-In: I439a4be9aac53fb02b566ae4d438afe3edf2b37a
2019-11-18 16:06:08 -08:00
Lyn Han
0ee7184551 Dedup smart reply updates for bubble flyout [DO NOT MERGE]
[Cherrypicked from master]

Smart reply updates are not visually interruptive and bubbles should not
show flyout for them, since flyout text remains the same.

1) Modify NoMan.isVisuallyInterruptive to skip evaluation of fields
irrelevant to bubbles

2) Modify NotificationComparator to rank interruptive notifs higher

3) Pipe bool (isInterruptive) from system_process to SysUI
	NoMan --- set bool on notif record and ranking
	Ranking --- parcel bool for cross-process transport
	SysUI notif entry --- get bool from ranking
	SysUI bubble data --- on notif entry update, suppress flyout if isInterruptive=false

	Considered adding "isInterruptive" bool to StatusBarNotification.
	Did not because "visually-interruptive" is additional information that the
	system figured out and SBNs should be limited to info from the app.

4) NoMan --- schedule ranking update if interruptive changes for bubble

Fixes: 138755533
Test: manual - send one sms => flyout appears once
Test: manual - send multiple sms in a row => flyout appears for each one
Test: atest FrameworksUiServicesTests
Test: atest NotificationComparatorTest
Test: atest SystemUITests
Change-Id: Id4b855054689ee73a109bb7cd18004531b41f28c
(cherry picked from commit 0dddc61824d091e48962e36939828cae3cde2aa9)
2019-11-01 14:31:40 -07:00
Beverly
51563b5ffe Fix zen alarms only mode check
Also fixes setting the consolidated zen policy logging.

Fixes: 140329813
Test: android.app.cts.NotificationManagerTest#testTotalSilenceOnlyMuteStreams
Test: android.app.cts.NotificationManagerTest#testAlarmsOnlyMuteStreams
Change-Id: I43d503ac23d7b0b141930d77cb76f1f589b22525
(cherry picked from commit dcc5cfc561)
2019-10-24 15:51:37 +00:00
Beverly
dcc5cfc561 Fix zen alarms only mode check
Also fixes setting the consolidated zen policy logging.

Fixes: 140329813
Test: android.app.cts.NotificationManagerTest#testTotalSilenceOnlyMuteStreams
Test: android.app.cts.NotificationManagerTest#testAlarmsOnlyMuteStreams
Change-Id: I43d503ac23d7b0b141930d77cb76f1f589b22525
2019-09-06 17:25:47 +00:00
Tony Mak
7ba3fd4546 Hold a strong reference to the callback in TextClassifierService
Issue:
TextClassifierService failed to invoke the callback to send the result back to client
occasionally because  the callback object may be GCed.
And thus smart selection failed occasionally, as the client doesn't get a response
back when it hits this issue. It won't fallback to local textclassifier due to the
timeout specified in TextView.

Cause:
We thought that ITextClassifierCallback is a "cross process" reference, and
so we only store a weak reference of it to avoid leak.
And it turns out that it is wrong. As soon as the weak ref gets GCed in
the service, that counts as dropping the callback. The service doesn't
know about any strong references the client has.

Bug: 138865849

Test: Try smart selection over 30 times, make sure smart action is shown
for every single time.

Merged-In: Ia9218cf67e8d67697a0fdff22c7918a55efc39ca

Change-Id: I4d89518dfff777ba5d999d9ba89d7f4cf7598e75
2019-08-22 14:19:23 +00:00
TreeHugger Robot
029190c1bc Merge "Log usage of addPerson() and setStyle() in notifications." into qt-dev 2019-06-18 17:04:01 +00:00
Julia Reynolds
b1f5aafc91 Use connected boolean as NLS does vs IBinder
To determine if the CPS can get/send messages. Apparently
the IBinder can be cached in ActivityManager and onBind() is not
always called when a service is connected the second time.

Test: manual; ensure a service recieves an onsubscribe for an
active rule post requestUnbind/requestRebind
Fixes: 62584038

Change-Id: Iffe37242509f3bf26e609e6b423f3928c00156ad
(cherry picked from commit 265d093cd9)
2019-06-17 17:51:18 +00:00
Will Brockman
c22772c36a Log usage of addPerson() and setStyle() in notifications.
Added Tron logging to StatusBarNotification.getLogMaker() so it will
be present in most logs about the notification.

Change-Id: I720706d37c663f2018bdfe2153ad180970166c90
Test: atest android.service.notification.StatusBarNotificationTest
Bug: 135180518
2019-06-14 19:10:02 +00:00
Julia Reynolds
b9dceee067 Wrap legacyExtra generation in targetsdk check
Newer listeners don't need that information!

Test: atest
Fixes: 134964922
Change-Id: I1eb2fe4d339a7ae4950d905d62bd34eebbdb5657
2019-06-12 14:05:40 +00:00
Dan Sandler
ba666f8f54 Dramatically simplify NotificationRankingUpdate.
It is now simply a container for a parceled RankingMap,
which can be unparceled entirely into objects in the
listener's heap and discarded. Notification key strings are
interned (by reference into the Ranking data structure).

This should save a considerable amount of RAM:

 - parceled Bundles hanging around in the listener process,
   waiting to be unparceled, never freed
 - a dozen copies of the notification key string

Bug: 133763354
Test: atest NotificationManagerServiceTest NotificationListenerServiceTest NotificationDataTest
Test: coretests, cts, etc.
Change-Id: I5d8ab5c8f27c70f4af7051b24608ba0d1f2dd5cd
2019-06-06 15:43:23 -04:00
Jan Althaus
367eb8ca1f Adding issuer information to NAS Adjustments
Test: manually tested with ExtServices and AiAi as NAS
Bug: 132679875
Change-Id: I3b4b3135037fe3f82b18e7c024931842986c70bb
2019-05-23 19:35:01 +00:00
TreeHugger Robot
99885212fa Merge "Fixed Cancellation for PendingAutofillRequest." into qt-dev 2019-05-22 18:52:32 +00:00
Adam He
79e0ba05ec Fixed Cancellation for PendingAutofillRequest.
1. mCallback.cancel() now correctly cancels the pending request.
2. AutofillProxy.update() now updates the CancellationSignal.

Fixes: 132459064
Test: atest android.autofillservice.cts.augmented
Change-Id: If8b2ab5c0fd8db4cfad440bf47031f6d85c28ae5
Merged-In: If8b2ab5c0fd8db4cfad440bf47031f6d85c28ae5
2019-05-21 21:13:03 +00:00
Julia Reynolds
95706d0c60 Merge "Revert "Adding issuer information to NAS Adjustments"" into qt-dev 2019-05-21 18:59:33 +00:00
Hyunyoung Song
1ef1abed52 Merge "Add a rule to compile IWallpaperService.aidl" into qt-dev 2019-05-21 16:35:20 +00:00
TreeHugger Robot
f953da0c20 Merge "DO NOT MERGE - Minor fix on internal method name." into qt-dev 2019-05-21 15:41:53 +00:00
Julia Reynolds
b58434a869 Revert "Adding issuer information to NAS Adjustments"
This reverts commit 3b33a04fb3.

Reason for revert: This is crashing ExtServices on qt-dev

Bug: 132679875
Change-Id: I60b7b6b8db33585f62e108389367c74ce682b922
2019-05-21 15:04:27 +00:00
Jan Althaus
3b33a04fb3 Adding issuer information to NAS Adjustments
Test: manually tested with AiAi NAS
Fixes: 132679875

Change-Id: I5d4bf41383143e9573ddad5c08205e1dca3ba6b3
2019-05-21 08:57:02 +02:00
Hyunyoung Song
096e40510d Add a rule to compile IWallpaperService.aidl
Test: builds
Bug: 133160356

Change-Id: Ib2bcf5a091c603a08dcdb14126bc284575e75806
2019-05-20 14:46:19 -07:00
TreeHugger Robot
0d7d8d2baf Merge "Sets Tile default state to INACTIVE" into qt-dev 2019-05-20 13:34:25 +00:00
Felipe Leme
15b44fe1e3 DO NOT MERGE - Minor fix on internal method name.
Test: atest CtsContentCaptureServiceTestCases

Bug: 130726495

Change-Id: I608fde123882ef58698957e76a5e8cc023153ef0
2019-05-17 19:11:00 +00:00
Adam He
815979d5df Merge "Metrics for content capture." into qt-dev 2019-05-16 19:53:04 +00:00
Fabian Kozynski
5c6f04df30 Sets Tile default state to INACTIVE
When the Tile is created, we don't have its actual state, so it has to
start with some default state. Between the tile being bound and the
first time the state is updated by TileService, this is the default
state.

When the Tile for CustomTile is created, set its default state to
INACTIVE. On the first update it after it's bound it will be set
correctly. This is probably less upsetting than an ACTIVE tile that
suddenly becomes INACTIVE.

Test: manual using logs to verify that the Tile is never ACTIVE when it
shouldn't.
Fixes: 132813963

Change-Id: I58bad0a2a16ca42366a5772f62fe82c74a6e2fb7
2019-05-16 14:23:58 -04:00
Adam He
ff2185346e Metrics for content capture.
Bug: 119613670
Test: statsd_testdrive & manual test
Change-Id: Ib2c61d2a3c08a9db779790417eb0177c2420d8fd
Merged-In: If43465ccee7454a7ebf9e15caa23fce7bae33cfe
2019-05-15 11:12:02 -07:00
Mehdi Alizadeh
8ed33831c9 Updates java doc in AppPredictionService
Bug: 123591863
Test: None
Change-Id: I1ef31e6c723199432f852ad38e1af35d6017cc1f
2019-05-14 15:05:31 -07:00
Fabian Kozynski
5e23231f82 Merge "Fix race condition in TileServices" into qt-dev 2019-05-10 14:22:25 +00:00
Felipe Leme
c0df895a41 Added moar augmented-autofill metrics:
- AUTOFILL_AUGMENTED_WHITELIST_REQUEST
- AUTOFILL_AUGMENTED_RESPONSE
- FIELD_AUTOFILL_AUGMENTED_ONLY on AUTOFILL_SESSION_FINISHED

Test: adb shell logcat -b events | grep sysui
Test: atest CtsContentCaptureServiceTestCases # sanity check

Bug: 112192360
Fixes: 122858578

Merged-In: Ia6bfced9396dd9e3f8ef2a6c45415dc22f4327c9
Change-Id: Ia6bfced9396dd9e3f8ef2a6c45415dc22f4327c9
2019-05-07 11:46:12 -07:00
George Hodulik
940284bbbe Merge "Add null check in AppPredictionService callback wrapper." into qt-dev 2019-05-06 17:58:43 +00:00
George Hodulik
b3aa6562e5 Add null check in AppPredictionService callback wrapper.
Bug: 131917369
Test: Killed launcher and confirmed the binder died callback was called and callback was removed.
Test: compiles
Change-Id: I40612aeca2de2f197e17379355e6d9e46193ae5e
2019-05-06 17:58:24 +00:00
TreeHugger Robot
19864d570c Merge "Removed unusued constant (FLAG_AUGMENTED_AUTOFILL_REQUEST)." into qt-dev 2019-05-06 16:52:00 +00:00
Felipe Leme
8fc8838e74 Removed unusued constant (FLAG_AUGMENTED_AUTOFILL_REQUEST).
Test: atest CtsContentCaptureServiceTestCases
Bug: 123100811
Bug: 122858578

Change-Id: I030cb12343e6c07cbcd1d6ba08e1051109531aab
2019-05-06 16:48:44 +00:00
TreeHugger Robot
165ac85b33 Merge "Remove separate recent app tracking" into qt-dev 2019-05-04 14:30:29 +00:00
Julia Reynolds
8bd8fdf506 Remove separate recent app tracking
Just use UsageStats

Test: atest
Bug: 131641848
Change-Id: I40c0f3dd3a2b67ed1f52062b3cbadec6bed0f189
2019-05-03 20:50:07 +00:00
Zak Cohen
5aa8b6df09 Remove temporary deprecated methods ContentSuggestionsService.
Bug: 127532182
Test: CTS test
Change-Id: Icc0bc012a5e1a2c85d108a7fa7df481e570cd43a
2019-05-03 20:48:08 +00:00
Fabian Kozynski
e6395dd71a Fix race condition in TileServices
TileServices#getTileWrapper created a TileServiceManager (that triggered
the binding of TileService through a Handler) and after populated the
maps with the respective tokens. As one of the keys is the
TileServiceManager, this had to do after creating it.

This created the situation that in certain cases, the binding would
happen before all the maps were populated (in particular mTokenMap but
sometimes mServices).

By decoupling the binding triggering from TileServiceManager constructor
into a separate method in TileServiceManager we can guarantee that by
the time the service is bound, the maps are populated. Also added some
guards to make sure that this method has been called and the tile has
been added.

The new method is called after populating the maps, and it would not
make sense for the TileService to be bound if the maps are not
populated.

Test: atest TileServiceMaanger TileLifecycleManager TileServicesTest
Test: atest CtsAppTestCases:android.app.cts.TileServiceTest (approx 50
times)
Test: test TileServiceTest ActiveTileServiceTest
Test: Development tiles and adding Grayscale tile work perfectly
Fixes: 124735442
Fixes: 129684780
Fixes: 130796699

Change-Id: Ie3c7277756c74551ba2e6b3e88dad4a98aeafc96
2019-05-03 12:18:43 -04:00
Leon Scroggins
6e5efabcfd Merge "Pass ColorSpace along with HardwareBuffers" into qt-dev 2019-05-02 15:15:02 +00:00
Ian Pedowitz
8b3b7771c1 Merge "Revert "RESTRICT AUTOMERGE Remove deprecated System APIs added in Q."" into qt-dev 2019-05-02 00:59:09 +00:00
Ian Pedowitz
79a19effee Revert "RESTRICT AUTOMERGE Remove deprecated System APIs added in Q."
This reverts commit 02014297fd.

Reason for revert: QT SDK Finalization. Will be merged again on/after May 13th

Bug: 129975435
Change-Id: Ia054b193a982dee669630555974d2d7831fe2b50
2019-05-02 00:54:39 +00:00
Ian Pedowitz
3f38719b74 Merge "RESTRICT AUTOMERGE Remove deprecated System APIs added in Q." into qt-dev 2019-05-02 00:53:29 +00:00
Svetoslav Ganov
ec0bd2981f Merge "Address API conucil feedback" into qt-dev 2019-05-01 19:02:40 +00:00
Zimuzo
def38bed7d Make PackageWatchdog variables configurable
We leverage DeviceConfig to configure the following variables:
    watchdog_trigger_failure_duration_millis
    watchdog_trigger_failure_count
    watchdog_explicit_health_check_enabled
    watchdog_explicit_health_check_timeout_millis

Fix PackageWatchdogTest accordingly.

Bug: 129335707
Test: added Log to PackageWatchdog that prints the received
value from DeviceConfig and made sure it matches the expected
Test: atest com.android.server.PackageWatchdogTest
Merged-In: I8a57b87682a4c636a61afdd7f93700459ccfddeb

Change-Id: I8a57b87682a4c636a61afdd7f93700459ccfddeb
2019-05-01 12:30:30 +00:00
Svet Ganov
07e5fb253c Address API conucil feedback
Test: compiles

bug:131683068

Change-Id: I02afd0cc392e4fadd60de0d9802748452262543b
2019-04-30 11:16:21 -07:00
Sudheer Shanka
02014297fd RESTRICT AUTOMERGE Remove deprecated System APIs added in Q.
Test: Builds, boots
Bug: 129975435
Change-Id: I4bfd0bfbbc52b7822477ec0c70a08de6f85a3672
2019-04-30 10:49:28 -07:00
Svet Ganov
3b6be08c3d Address API council feedback
Make the get actions API async. Also fix a potenrial
memory leak when exchaning callbacks.

Test: atest CtsVoiceInteractionTestCases

bug:129705716

Change-Id: I91f1beb3dc7a395c6c6307ca4601fe7b7097f6e3
2019-04-28 23:01:30 -07:00
Leon Scroggins III
3e2d7b7fe0 Pass ColorSpace along with HardwareBuffers
Bug: 130148101
Bug: 120904891
Test: I3bdb6a7edbab4b9b8f13d4597e5987e6db6fe928

Bitmap#wrapHardwareBuffer defaults to using the SRGB ColorSpace (i.e. if
null is supplied), but it's possible that where the HardwareBuffer was
originally used, it was associated with a different ColorSpace. Update
clients of this API to pass that ColorSpace.

Pass the ColorSpace's ID. This results in only supporting Named
ColorSpaces, which matches some of our other ColorSpace support, and
should be enough for most use cases.

Change-Id: I02460f079ed467199f368b4a4fd7708d6fa5433a
2019-04-25 16:48:08 +00:00