Commit Graph

13049 Commits

Author SHA1 Message Date
TreeHugger Robot
51856fde2b Merge "Updated the styling for notifications" into pi-dev 2018-03-23 00:02:35 +00:00
TreeHugger Robot
6affc07065 Merge "APIs to suspend packages with SUSPEND_APPS permission" into pi-dev 2018-03-22 22:15:31 +00:00
Nathan Harold
8a047a0c52 Merge "Add AppOp for IpSec Tunnels" into pi-dev 2018-03-22 21:14:36 +00:00
Suprabh Shukla
021b57ab8d APIs to suspend packages with SUSPEND_APPS permission
Changed the existing hidden api setPackagesSuspendedAsUser to a system
api setPackagesSuspended that can be called by apps with either
MANAGE_USERS or SUSPEND_APPS permission. Additionally, the suspending
app can now specify optional extra information meant to be used by the
suspended apps and the launcher to deal with this state.

The following other APIs are added:
 - isPackageSuspended(): Apps can query whether they are in a suspended
 state
 - @SystemApi getPackageSuspendedAppExtras(String): Apps with permission
 SUSPEND_APPS can get the appExtras passed to PM when suspending the
 app.
 - @SystemApi setPackageSuspendedAppExtras(String, PersistableBundle):
 Apps with permission SUSPEND_APPS can update app extras for a
 suspended package.
 - getPackageSuspendedAppExtras(): Apps can call to get the appExtras
 passed in to PM when they were suspended.

Test: Can be run via:
atest com.android.server.pm.PackageManagerSettingsTests
atest com.android.server.pm.PackageUserStateTest
atest com.android.server.pm.SuspendPackagesTest

Bug: 74336673
Change-Id: I3b9ed2c8478b34ee2e8986f5f5fddb2839d102e3
2018-03-22 12:59:57 -07:00
Julia Reynolds
ae2f368907 Merge "Fix index error" into pi-dev 2018-03-22 11:39:28 +00:00
TreeHugger Robot
dcccfd9742 Merge "ScheduledJobStateChanged: add stop reason" into pi-dev 2018-03-22 01:30:52 +00:00
Selim Cinek
c7f5a827d6 Updated the styling for notifications
The new notifications now have different font weights
and colors to make the shade more readable.

Fixes: 69168591
Test: runtest systemui
Change-Id: I0b635724fa122d292841e56efa84aa57fa364300
2018-03-21 17:03:38 -07:00
Nathan Harold
1bb42067f0 Add AppOp for IpSec Tunnels
Add a new AppOp to allow bound system services
such as TelephonyDataServices and potentially
VPN providers to access the IPsec tunnel
management APIs. Since this is not directly
user-facing, and not all System apps should have
this privilege, the access is only granted via
an AppOp or to the system itself.

Bug: 66955045
Test: compilation (still WIP)
Change-Id: I0b0528c75c622d8538baeec019c3672cbed5d899
2018-03-21 15:23:39 -07:00
TreeHugger Robot
32ca41d028 Merge "Remove am/wm.proto which is redundant. The naming convention is defined in core/proto/README.md" into pi-dev 2018-03-21 21:24:19 +00:00
Julia Reynolds
5a366fbd81 Fix index error
Change-Id: I93cf18b35060a09a3b8f4be8e0b9b4682d390b25
Fixes: 76101440
Test: runtest systemui-notification
2018-03-21 15:57:40 -04:00
TreeHugger Robot
2f81559d29 Merge "Return a boolean from the mandatory backup transport setter." into pi-dev 2018-03-21 19:34:52 +00:00
TreeHugger Robot
1543171d3e Merge "Some Slices API refinement" into pi-dev 2018-03-21 17:06:40 +00:00
Lenka Trochtova
56681f761e Return a boolean from the mandatory backup transport setter.
Bug: 73813043
Bug: 64012357
Test: cts-tradefed run cts -m CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest#testGetAndSetMandatoryBackupTransport
Test: cts-tradefed run cts -m CtsBackupHostTestCase --test android.cts.backup.BackupDeviceOwnerHostSideTest

Change-Id: I7f47a41070b767a6be8b986be485b4ad782690cf
2018-03-21 15:48:41 +01:00
Jason Monk
1918ef7569 UsageEvents for slices pinning
Test: atest frameworks/base/services/tests/servicestests
Bug: 73455786
Change-Id: I6a37f5525c29d3f47aa37e262c8834840309ba44
2018-03-21 10:03:29 -04:00
TreeHugger Robot
6ed6340e3c Merge changes from topic "SoundTriggerJobService-steps" into pi-dev
* changes:
  Throttle number of sound trigger operations / day
  Add SoundTriggerDetectionService
  Expose SoundTriggerManager and SoundTrigger APIs
2018-03-21 03:27:56 +00:00
Selim Cinek
db0e4f1d73 Merge changes from topic "heads_up_redesign" into pi-dev
* changes:
  Added new appear and disappear animations for heads up
  Polished the heads up experience
  Removed the heads up scrim and replaced it with more elevation
  Insetting heads up notifications
  Ensured that the heads-up notifications are always rounded
2018-03-21 00:53:50 +00:00
Yi Jin
6c6e9cab42 Remove am/wm.proto which is redundant. The naming convention is defined
in core/proto/README.md

Bug: 72474563
Test: make sure the Android build
Change-Id: I2a90cbb6bb0b0c62fe4a0b81cb5bb3ea36381871
2018-03-20 17:39:32 -07:00
TreeHugger Robot
35a4f4c4a6 Merge "API Review: Documentation improvement for standby buckets" into pi-dev 2018-03-21 00:08:28 +00:00
Andrii Kulian
60b877fa8c Merge "Use transaction for local activity relaunch" into pi-dev 2018-03-20 22:42:21 +00:00
Selim Cinek
aa9db1f34f Insetting heads up notifications
Heads up notifications are now corretly respecting insets.
instead of overlapping with any possible notches, we're
insetting heads up notifications and splitting the main
content from the header.

Fixes: 72748440
Test: runtest systemui
Change-Id: Ie53ea31fef4e468239c4346f9d1f192bcb26e11d
2018-03-20 15:36:17 -07:00
Andrii Kulian
982973934d Merge "Don't set override display info for ActivityView" into pi-dev 2018-03-20 22:01:27 +00:00
TreeHugger Robot
1c7c2bdd0b Merge "Log visual interruptions to usagestats." into pi-dev 2018-03-20 21:34:01 +00:00
TreeHugger Robot
06ce5f6803 Merge "Make SYSTEM_INTERACTION a SystemApi" into pi-dev 2018-03-20 21:31:58 +00:00
Andrii Kulian
002e0ef06e Merge "Don't throw exception for duplicate stop" into pi-dev 2018-03-20 21:11:09 +00:00
Andrii Kulian
77d7360597 Use transaction for local activity relaunch
To know that onPostCreate callback should be executed we should use
TransactionExecutor for the entire transaction. It will fill
PendingActions object during the launch and the callback will be
triggered after onStart.
This CL changes local activity relaunch to use Lifecycler
infrastructure.

Bug: 72029061
Bug: 64610483
Fixes: 73747058
Test: ActivityLifecycleTests
Change-Id: I7d3fa6339fa6fe2634d0d1635f76e4d6ba03beb2
2018-03-20 14:08:40 -07:00
Philip P. Moltmann
18e3eb8168 Add SoundTriggerDetectionService
The service is meant to replace the PendingIntent based API. Once all
users of the PendingIntent based API switched the PendingIntent based API
will be removed.

To have as little as possible impact on the whole SoundTrigger framework
the RemoteSoundTriggerDetectionService class implements the same
interface as the PendingIntent based class. Hence the exising code has
very little change. Further once the old code can be removed the amount
of changed (and added) code is limited.

The RemoteSoundTriggerDetectionService -> SoundTriggerDetectionService
is a vanilla as possible service implementation. The special behaviors
are:
- The system holds a wakelock while service operations are in progress
and the service is bound as foreground. Hence the service can e.g.
listen to the microphone.
- Service operations have a certain amount of time they are allowed to
run. Once every operation is either finished or the the operation
exceeded the allotted time, the system calls onStopOperation for each
still pending operation. This is a similar model as for the commonly
used JobService.
  Please note that if the time allowed for an operation is 15s and
op1 was run as 0si, and op1 was run at 5s, the service is allowed to run
until 20s. Hence _both_ onStopOperations will happen at 20s. This is
done for ease of implementation but should not give the service more
power than calling onStopOperation exactly 15s after each operation is
triggered.
- If an operation is done before the allotted time is reached, the
service can declare the operation as finished manually by calling
onOperationFinished. This is a call back into the system, hence a
'client' binder is sent to the service. If the operation is finished
by calling this method onStopOperation will not be called.
- As the service instance might be killed and restored between
operations we add a opaque bundle 'params' to each operations. The users
of the API can use this to send data from the start command to the
operations. It can also just be set to null. The params are not meant to
store changing state in between operations. Such state needs to be
persisted using the regular methods (e.g. write it to disk)
- A service can be used for multiple recognition sessions. Each
recognition is uniquelity defined by its sound model UUID. Hence each
operation gets at least tree arguments: Operation ID, sound mode UUID, params
- As a small optimization the params are cached inside of the service
instance.

The time allowed for each operation is in a @SystemAPI global setting,
so the service can make sure it finishes the operations before they are
stopped. It might take some time to deliver the operations via the
binder, hence it is not recommended to try to use every last ms of
allotted time.

Test: atest SoundTriggerDetectionServiceTest (added in separate CL)
      atest android.provider.SettingsBackupTest
Change-Id: I47f813b7a5138a6f24732197813a605d29f85a93
Fixes: 73829108
2018-03-20 13:57:14 -07:00
Jason Monk
106387f0b2 Some Slices API refinement
Removing overloads, fixing documentation, adding stringdefs, etc.

Test: update-api
Change-Id: Iae902092a29d44c3f4735ad2c3392bb35988684a
Fixes: 73124159
Bug: 73123366
Fixes: 73123451
Fixes: 73123651
Fixes: 73124123
2018-03-20 16:55:47 -04:00
Andrii Kulian
f0379de259 Don't set override display info for ActivityView
ActivityView content should never be letter- or pillar-boxed
and it doesn't have overscan areas, so we can skip setting
display override info for a virtual display that backs it.

Bug: 72220802
Test: Manually resize with ActivityView demo app
Change-Id: I211449eaea50ec5d3214d63e7eb93a1d2ed2c0fd
2018-03-20 19:43:34 +00:00
Julia Reynolds
7217dc9f76 Log visual interruptions to usagestats.
Test: runtest systemui-notification, cts
Bug: 74318867
Change-Id: I6233240c2a7940225cadde0258b5d7ba88b86aaf
2018-03-20 15:14:16 -04:00
Amith Yamasani
853e53f6e8 API Review: Documentation improvement for standby buckets
Specify how to compare with bucket constants since new
bucket constants could be introduced later.

Fixes: 73790511
Test: builds

Change-Id: Ib99ec5fe208bc612869df8bfc69a26ee6be31fa5
2018-03-20 12:00:28 -07:00
Tej Singh
33a412b52d ScheduledJobStateChanged: add stop reason
Adds stop reason to scheduled job state changed

Bug: b/71755130
Test: cts-tradefed run cts-dev -m CtsStatsdHostTestCases -t android.cts.statsd.atom.UidAtomTests#testScheduledJobState
Test: cts-tradefed run cts-dev -m CtsIncidentHostTestCases -t com.android.server.cts.JobSchedulerIncidentTest
Change-Id: Ic29a5e9160ac258140a52d31bc6210300949545d
2018-03-20 11:20:58 -07:00
Chris Wren
6446ed4a0f Merge "support framework logging for slices" into pi-dev 2018-03-20 17:33:40 +00:00
Leon Scroggins
83ad4e53b6 Merge "Scale up in ImageDecoder based on API level" into pi-dev 2018-03-20 16:44:44 +00:00
Leon Scroggins III
8290eaba47 Scale up in ImageDecoder based on API level
Bug: 74061412
Bug: 73893665
Test: Manual, I5669a97c70d726826c5c00bc1413c2f97d95d88c

ImageDecoder typically does not scale a Bitmap up to handle density.
This saves memory, and we already handle the density by scaling at
draw time. But some apps rely on the size of the Bitmap without taking
density into account. For backwards compatibility, on apps that are
built for a pre-P version of Android, scale up in ImageDecoder.

Change-Id: I9991d1286e386b47fc57bcfbf0c6652beb1a53ef
2018-03-20 10:30:32 -04:00
Peter Visontay
a382a8e668 Add missing "android:" prefix to some app op constants.
Bug: 75253734
Test: none
Change-Id: Ie91b4bee938b9c834c2cb3c831e3473fab0f534c
2018-03-20 14:25:12 +00:00
kopriva
fdffe0a8be docs: fixing typo, bug 36909553
am: 4dddc63ee7

Change-Id: Ib943321651422b55b928b90617145a871a0d0460
2018-03-20 04:12:47 +00:00
Andrii Kulian
829829ca2c Don't throw exception for duplicate stop
A double stop request is possible when display is being locked.
An activity may receive a "sleep" message followed by "stop",
both of which try to move it to stopped state.

An example when this happens: a keyguard is set up and the screen
is being locked. The keyguard will occlude the activity, which
causes a transition to paused state and, eventually, to stopped
state. A "sleep" message can be sent sometime before "stop" message
and will ignore that activity is in the process of becoming stopped.

Change-Id: I09e2c26004664b6e73ac5c2b6fe88bdf8271cf34
Fixes: 74967786
Test: FrameworksCoreTests:ActivityThreadTest
2018-03-19 18:41:15 -07:00
kopriva
4dddc63ee7 docs: fixing typo, bug 36909553
Test: make ds-docs

Bug: 36909553
Change-Id: I6e6842fe555690d97b954c370b777b25c6f5e54e
2018-03-19 14:25:30 -07:00
TreeHugger Robot
96e680cb90 Merge "Small fixes to StatsManager API." into pi-dev 2018-03-19 21:04:39 +00:00
Tracy Zhou
017f44be88 Merge "Move default pip position to right above the shelf." into pi-dev 2018-03-19 20:15:14 +00:00
Chris Wren
9d8ce74a63 support framework logging for slices
Bug: 74354980
Test: runtest systemui
Change-Id: I0c7b398b1a077bc525f50c01d1065be2282a1809
2018-03-19 15:56:00 -04:00
Alex Kershaw
56be97edd0 Merge "Fix Javadoc of DevicePolicyManager#setStorageEncryption to reflect that it's a no-op (and silent fail) when called from a non-system user." into pi-dev 2018-03-19 18:17:23 +00:00
TreeHugger Robot
75cd1c0334 Merge "Don't use IPC in isolateProcess" into pi-dev 2018-03-19 17:56:14 +00:00
Tracy Zhou
43513086d2 Move default pip position to right above the shelf.
This change takes care of the flow from WindowManagerService to
PinnedStackController, all the way to PipTouchHandler. It also
introduces a WindowManager hook that allows Launcher to pass in
shelf visibility and height. A separate change is made to send
signals from Launcher to SysUI. (ag/3724896)

Bug: 73961893
Change-Id: I2ff54e78bc2dc35c806b902464048b051a4d6394
Test: atest CtsActivityManagerDeviceTestCases:ActivityManagerPinnedStackTests
2018-03-19 17:41:08 +00:00
David Chen
c1a3a0d780 Small fixes to StatsManager API.
Adds some annotations, deletes an unused API method, and adds some
comments.

Test: Flashed onto marlin-eng and verified there are no crashes.
Bug: 72562867
Change-Id: I6c93ee4aeeacf6842795256c76551cfb1c28888d
2018-03-19 10:26:51 -07:00
Mike Digman
bd24572e17 Merge "Add disable2 flag for rotate suggestions" into pi-dev 2018-03-19 17:13:30 +00:00
TreeHugger Robot
781533dc32 Merge "StatsManager log lines should be in logcat" into pi-dev 2018-03-19 16:18:53 +00:00
Jorim Jaggi
54cff64ec6 Insert correct app transition events for recents anim
The transition delay will be the latency until all the leashes
were created etc. Thus, the actual latency is going to be in
WINDOWS_DRAWN_DELAY.

Also fix an issue where we inadvertently started a transition,
and then the transition logger was hanging.

Bug: 72967764
Test: Swipe up from home button, observe eventlog
Change-Id: I2b1fb7d9d694a629a33653c1fa3d5ed47f53de6b
2018-03-19 14:55:41 +00:00
Alex Kershaw
61ec825598 Fix Javadoc of DevicePolicyManager#setStorageEncryption to reflect that
it's a no-op (and silent fail) when called from a non-system user.

DevicePolicyManagerService#setStorageEncryption also has its Javadoc
fixed.

Bug: 74591983
Change-Id: Ie191ad255cbfcade921d172641f134d6c49a17b1
Fixes: 74591983
Test: N/A - just javadoc changed
2018-03-19 10:57:12 +00:00
Bookatz
1f63131425 StatsManager log lines should be in logcat
Change the Slog.d to Slog.w and enable them, so that we can see them.
They seem to represent important failure events when people call the
public API into StatsManager.

Bug: 74997752
Test: none
Change-Id: I1c577b32358158f73453a8a3066013e0f3733d87
2018-03-18 16:17:51 +00:00