Commit Graph

13157 Commits

Author SHA1 Message Date
Dianne Hackborn
30181d3bc1 Merge "Work on issue #74404949: Screen state usage API" into pi-dev
am: 00f3c4333e

Change-Id: I3bff628d13f1089213edf84aa1feffd683b99cd7
2018-03-27 23:37:02 +00:00
Christopher Tate
f88a8023d6 Merge "Regularize some wallpaper APIs" into pi-dev
am: 17b6490ce1

Change-Id: I3ce564689cea8a2172dc682813c7bd0dcec3b199
2018-03-27 23:02:45 +00:00
Dianne Hackborn
00f3c4333e Merge "Work on issue #74404949: Screen state usage API" into pi-dev 2018-03-27 22:40:51 +00:00
TreeHugger Robot
17b6490ce1 Merge "Regularize some wallpaper APIs" into pi-dev 2018-03-27 21:50:31 +00:00
Dianne Hackborn
ced54398cc Work on issue #74404949: Screen state usage API
Add usage stats tracking of screen time.  There are two new
events, one for when the device is an interactive state, the
other for when it is non-interactive.  Also add a whole new
usage stats API for retrieving aggregated data that is associated
with general events, not particular packages.  In this case
it allows you to find the time the device spent interactive
and non-interactive and the count of the transitions in to
each of those states.

Bug: 74404949
Test: atest CtsUsageStatsTestCases:UsageStatsTest\#testInteractiveEvents

Change-Id: Ibe6d55e2aecb0c8519b1358644378ec5c7a4250d
2018-03-27 13:27:20 -07:00
Andrii Kulian
cde24090c7 Merge "Use transaction for local activity relaunch" into pi-dev
am: dbac87dd40

Change-Id: Iea33b11413999fe45f6d0e28d376b18e68fc5124
2018-03-27 18:24:50 +00:00
Andrii Kulian
dbac87dd40 Merge "Use transaction for local activity relaunch" into pi-dev 2018-03-27 17:24:42 +00:00
Jeff Sharkey
120b8aa395 Merge "API council requested tweaks to JobInfo." into pi-dev
am: a9975804a2

Change-Id: I40217f8df995db19a59e0253b3d8d0440d57acb3
2018-03-27 16:43:25 +00:00
TreeHugger Robot
a9975804a2 Merge "API council requested tweaks to JobInfo." into pi-dev 2018-03-27 16:25:23 +00:00
Jeff Sharkey
8474ca0246 API council requested tweaks to JobInfo.
Split network estimates into separate download/upload values, and
add missing accessor methods.

Test: none
Bug: 74945408, 74032541, 74032817
Change-Id: I4c92b8a867690dc4f048701f13142655c3370958
2018-03-27 08:41:42 -06:00
Eric Sandness
f21a3796cb Merge "Permission Check For DPM.isDeviceProvisioned" into pi-dev
am: 9f36c26f83

Change-Id: Ie798dde6593e6d0786f541a5c2512eb388ca5554
2018-03-27 12:36:01 +00:00
Eric Sandness
9f36c26f83 Merge "Permission Check For DPM.isDeviceProvisioned" into pi-dev 2018-03-27 12:25:53 +00:00
Yueming Wang
5148a2e55f Merge "Add javadoc to explain ApnSetting conflict." into pi-dev
am: 3cc7c4fc76

Change-Id: I2370b8cc9b5b730d2bf2c4f522d955e952f74bdb
2018-03-27 10:30:37 +00:00
Yueming Wang
3cc7c4fc76 Merge "Add javadoc to explain ApnSetting conflict." into pi-dev 2018-03-27 10:19:13 +00:00
Eric Sandness
135b4fa15c Merge "Permission Check For DPM.getUserProvisioningState" into pi-dev
am: 1ad8367249

Change-Id: I8b33dcb4338ffa47c11d06f30e4d7b36f275fcd9
2018-03-27 10:03:32 +00:00
Eric Sandness
1ad8367249 Merge "Permission Check For DPM.getUserProvisioningState" into pi-dev 2018-03-27 09:52:58 +00:00
Eric Sandness
df30c7d2e0 Permission Check For DPM.isDeviceProvisioned
Require the caller of DPM.isDeviceProvisioned() to hold the MANAGE_USERS
permission.  The only callers should be within the framework itself, or
apps involved in device provisioning which already hold this permission.

Bug: 62343414
Test: Set TestDPC as Device Owner and use it to reset password
Test: com.android.server.devicepolicy.DevicePolicyManagerTest
Test: com.android.server.locksettings.LockSettingsServiceTests
Test: com.google.android.gts.devicepolicy.DevicePolicyManagerTest
Change-Id: Ie53deb5ba8679a5b431f2a8da60ec9710c44d56f
2018-03-27 09:13:11 +00:00
yuemingw
6586f05457 Add javadoc to explain ApnSetting conflict.
As per discussion with Amit, it's better to define "conflict"
of ApnSetting in DevicePolicyManager API javadoc.

Bug: 72153573
Test: not required.
Change-Id: I765dace36a3c9c491c988dc0a87479cdec620e37
2018-03-27 08:29:05 +00:00
Andrii Kulian
914aa7da7f 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. We should immediately execute local recreate
requests, because if we wait until the scheduled message to be
handled, we may already be in a different state and final state
request in the scheduled relaunch transaction will already be
obsolete.

Bug: 72029061
Bug: 64610483
Bug: 76088057
Bug: 73747058
Test: ActivityLifecycleTests
Change-Id: Ia53ecd199c83d030932c4493064e58568805f2a5
2018-03-26 23:40:01 -07:00
Jason Monk
fe54f0c260 Merge "Security fixup for Slices" into pi-dev
am: fc704e2fd7

Change-Id: I7a3dfda74afdbaa1c77058b3a27c86899c1b05a3
2018-03-26 21:59:46 +00:00
Jason Monk
fc704e2fd7 Merge "Security fixup for Slices" into pi-dev 2018-03-26 21:44:38 +00:00
Christopher Tate
105540da41 Regularize some wallpaper APIs
Specifically:

  + support clearing wallpapers, with similar permissions to setting
  + support adjusting padding, with similar permissions as defining
    wallpaper dimension hints (which behave somewhat similarly)

Bug: 62343054
Test: atest CtsPermissionTestCases:NoWallpaperPermissionsTest
Change-Id: Ia25f2791a20564c58096a25e6e189aa3b06b411c
2018-03-26 11:26:50 -07:00
Benjamin Franz
ea32bc4e38 Merge "Expose hidden API to check whether a given package is state protected" into pi-dev
am: 3ff20e2257

Change-Id: I797fd24aff1afa3e37e6b5f4dbd93042b19ac369
2018-03-26 09:29:29 +00:00
Benjamin Franz
3ff20e2257 Merge "Expose hidden API to check whether a given package is state protected" into pi-dev 2018-03-26 09:15:41 +00:00
Suprabh Shukla
b334f1b2e9 Merge "Guarding collisions in TimeSparseArray" into pi-dev
am: 6da53af9c5

Change-Id: Ic8ba83876a867fc57100b33b47cd8ef51be39dfe
2018-03-24 22:49:37 +00:00
TreeHugger Robot
6da53af9c5 Merge "Guarding collisions in TimeSparseArray" into pi-dev 2018-03-24 22:36:21 +00:00
Andrii Kulian
7558a0b30c Merge "Revert "Use transaction for local activity relaunch"" into pi-dev
am: 603b911e48

Change-Id: I9443d43e9758916eb2ec6721c1ca9992bd7b9d87
2018-03-24 01:44:46 +00:00
Wale Ogunwale
21315b15b7 Merge "Don't show unsupported sdk warning in test harness." into pi-dev
am: 444885b10d

Change-Id: I750ffef919badf38d759a32b1067702692d2a9c2
2018-03-24 01:21:39 +00:00
Suprabh Shukla
2811d92483 Guarding collisions in TimeSparseArray
TimeSparseArray - used to store UsageEvents - can keep at most one event
per millisecond, which can result in an event being replaced by another
event that occurred close enough that the system records it at the same
millisecond.

Test: atest android.app.usage.TimeSparseArrayTest

Fixes: 73832306
Change-Id: I860a101ab098f65d5c5832758832f43572865690
2018-03-23 17:51:20 -07:00
Andrii Kulian
603b911e48 Merge "Revert "Use transaction for local activity relaunch"" into pi-dev 2018-03-23 23:36:02 +00:00
Wale Ogunwale
444885b10d Merge "Don't show unsupported sdk warning in test harness." into pi-dev 2018-03-23 23:32:54 +00:00
Amith Yamasani
980b453e17 Merge "Provide app launch count in UsageStats" into pi-dev
am: 8808edb063

Change-Id: I62a73e647fcbfffe5a56fe8229d8fb79738e2a80
2018-03-23 20:49:16 +00:00
Amith Yamasani
8808edb063 Merge "Provide app launch count in UsageStats" into pi-dev 2018-03-23 19:13:22 +00:00
Jason Monk
ac11238291 Security fixup for Slices
- Allow slice providers to override grant flow
 - Remove overriding caller, that was a terrible idea
 - Move where the same app check happens to allow for CTS

Test: CTS
Bug: 69168488
Change-Id: I61c81c0665a08420b7bc83e3660657b62b2cd6a8
2018-03-23 15:08:11 -04:00
Eric Sandness
3780c09c76 Permission Check For DPM.getUserProvisioningState
Require the caller of DPM.getUserProvisioningState() to hold the
MANAGE_USERS permission.  All callers should be apps involved in device
provisioning, which already hold this permission.

Bug: 62343414
Test: Run Device Owner sync auth provisioning manually
Test: Set up work profile with managed account manually
Test: com.android.server.devicepolicy.DevicePolicyManagerTest
Test:
com.android.managedprovisioning.finalization.UserProvisioningStateHelperTest
Test: com.google.android.setupwizard.tests.activity.QrScanControllerTest
Change-Id: Ib85433586d4dfb89019ca223fb925aca3d4bbf67
2018-03-23 18:59:41 +00:00
Petr Cermak
fcca48b648 Merge "Annotate RemoteInput#SOURCE_* with @IntDef" into pi-dev
am: 4341a66b03

Change-Id: I0d1a41c52cfe2b24eaa23cbd8fc49a6ae6493c2f
2018-03-23 18:55:42 +00:00
Andrii Kulian
46312b3999 Revert "Use transaction for local activity relaunch"
This reverts commit 77d7360597.

Reason for revert: b/76088057

Bug: 72029061
Bug: 76088057
Change-Id: Ib1212740bcd5dd0fe8de87521e716c17b93c30cd
2018-03-23 18:33:35 +00:00
Petr Cermak
8e2731bfef Annotate RemoteInput#SOURCE_* with @IntDef
This patch addresses a request from the API Council (http://b/74409378).
It defines a new RemoteInput.Source annotation for RemoteInput source
constants.

Bug: 74409378
Test: atest RemoteInputTest
Change-Id: I78a006b6a600ea0c0603b2591d1a29596074a44e
2018-03-23 15:51:12 +00:00
Selim Cinek
eabdcf3bef Merge "Updated the styling for notifications" into pi-dev
am: 51856fde2b

Change-Id: I8d7b12955763d4d286119e976901fb55cb7a023e
2018-03-23 03:01:17 +00:00
Suprabh Shukla
31b5990893 Merge "APIs to suspend packages with SUSPEND_APPS permission" into pi-dev
am: 6affc07065

Change-Id: Icd9ccea90cac3b367b74915f76d39d7f5f740687
2018-03-23 00:09:48 +00:00
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
Wale Ogunwale
402de825e7 Don't show unsupported sdk warning in test harness.
Also, added test api AM.alwaysShowUnsupportedCompileSdkWarning
that allows for forec showing the warning for an activity
component running in a test harness.

Change-Id: I72f6a8425cb6adc6060c70b2165aa82b459769f7
Fixes: 75455658
Test: atest CtsActivityManagerDeviceTestCases:PrereleaseSdkTest
2018-03-22 15:03:32 -07:00
Nathan Harold
e9ae13cabe Merge "Add AppOp for IpSec Tunnels" into pi-dev
am: 8a047a0c52

Change-Id: I159d49219d2f75e1f5aeece4196638a8823fc029
2018-03-22 21:35:36 +00:00
Nathan Harold
8a047a0c52 Merge "Add AppOp for IpSec Tunnels" into pi-dev 2018-03-22 21:14:36 +00:00
Amith Yamasani
bc813eb26e Provide app launch count in UsageStats
This counts the number of times the app was launched from outside
the app and ignores intra-app activity transitions.

Introduce a new permission for registering to observe app usage.

Fixes a bug where Settings couldn't force the app into another
bucket if it was recently launched.

Bug: 74335821
Fixes: 76100712
Test: Manual test using Settings
Test: UsageStatsTest to verify permission change
Change-Id: Ibd343c1cfa37089a3ac6fc30ba3194e21a9be499
2018-03-22 13:51:57 -07: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
Benjamin Franz
7cc9a817d4 Expose hidden API to check whether a given package is state protected
Bug: 75997475
Test: manual
Change-Id: I5e0da781af6d148aed2247175e8ee5d9f244ebe1
2018-03-22 18:10:06 +00:00
Julia Reynolds
571c29428f Merge "Fix index error" into pi-dev
am: ae2f368907

Change-Id: I818ce7bfe0fc6cb5f0bbe25ede1ac443ab7ef052
2018-03-22 11:54:05 +00:00
Julia Reynolds
ae2f368907 Merge "Fix index error" into pi-dev 2018-03-22 11:39:28 +00:00