History log of /frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7cf4509c31f3dc1c32f89c26867a50c4ed0d5618 28-Aug-2017 Rubin Xu <rubinxu@google.com> Fix resetPasswordWithToken before user unlock

1. Fix system server crash when resetPasswordWithToken is called before use
unlock, due to DPMS enforces user is unlocked when calculating password
sufficiency.
2. Propogate new password metric from LockSettingsService to DPMS after a
password reset with token, and fix a bug where stale quality was used.

Bug: 64923343
Bug: 64928518
Bug: 65286643
Test: cts-tradefed run cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.ManagedProfileTest#testResetPasswordWithTokenBeforeUnlock
Test: cts-tradefed run cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testResetPasswordWithToken
Test: runtest frameworks-services -p com.android.server.locksettings
Test: cts-tradefed run cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceAdminHostSideTestApi24#testRunDeviceOwnerPasswordTest
Test: runtest frameworks-core -c android.app.admin.PasswordMetricsTest
Test: runtest frameworks-services -c com.android.server.devicepolicy.DevicePolicyManagerTest
Change-Id: Ibb3736547b3b36da4a8a67af711e08a38427aa56
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8b2513e4399e8d96e9219b7de9f4c7aa9b8f3a44 17-Aug-2017 Charles He <qiurui@google.com> Merge "Opt-out for always-on VPN: rename API." into oc-mr1-dev
1aed7889c05bf9a9d93b506313e8c7f8a06442a1 15-Aug-2017 Benjamin Miller <benjaminmiller@google.com> Docs: Javadoc comment fixups for secure passcode reset methods.

Exceptions corrected for methods and cross references linked up.
Clarification about resetPassword() and work profiles.
Staged at: go/dac-stage/reference/android/app/admin/DevicePolicyManager.html

Test: make ds-docs with output staged and visually checked in DevicePolicyManager page
Bug: 38026339
Change-Id: I3346144193061fad7988c92e0d4be4b341ef7410
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c57a01c16616f938eaa84ae5349a53efdec6e4cc 15-Aug-2017 Charles He <qiurui@google.com> Opt-out for always-on VPN: rename API.

Rename the opt-out flag in AndroidManifest to
SERVICE_META_DATA_SUPPORTS_ALWAYS_ON
as directed by the API Council.

Bug: 64331776
Bug: 36650087
Test: runtest --path java/com/android/server/connectivity/VpnTest.java
Change-Id: I24326fad7a89083a2409134640bda81ee0359d08
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3673863f3b2ec692201b7fb3089a1c05973e08e4 15-May-2017 Charles He <qiurui@google.com> Opt-out for always-on VPN

Always-on VPN is a feature introduced in N. Since then, all VPN apps
targeting N+ are assumed to support the feature, and the user or the DPC
can turn on / off always-on for any such VPN app. However, a few VPN
apps are not designed to support the always-on feature. Enabling
always-on for these apps will result in undefined behavior and confusing
"Always-on VPN disconnected" notification.

This feature provides a new manifest meta-data field through which a VPN
app can opt out of the always-on feature explicitly. This will stop the
always-on feature from being enabled for the app, both by the user and
by the DPC, and will clear its existing always-on state.

A @hide API is provided to check whether an app supports always-on VPN.
Documentation is updated to reflect the behavior change.

Bug: 36650087
Test: runtest --path java/com/android/server/connectivity/VpnTest.java
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedDeviceOwnerTest#testAlwaysOnVpnUnsupportedPackage'
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedDeviceOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced'
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackage'
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced'
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackage'
Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test 'com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testAlwaysOnVpnUnsupportedPackageReplaced'

Change-Id: I477897a29175e3994d4ecf8ec546e26043c90f13
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d019d4c3156237d8bf2a993070331f61628c1046 11-Jul-2017 Christine Franks <christyfranks@google.com> Merge "Support demo mode and demo users" into oc-dr1-dev am: 2f87ca1637
am: b128d9cd77

Change-Id: I317aa17cefa918483aeec0cc58df89dd18f59472
361b825c0dc0d2b0bb1726da7c31c92f3c4e8a35 24-Jun-2017 Christine Franks <christyfranks@google.com> Support demo mode and demo users

Bug: 62712426
Test: run cts -m CtsDevicePolicyManagerTestCases -t \
com.android.cts.devicepolicy.DeviceOwnerTest#testCreateAndManageEphemeralUser
and
run cts -m CtsDevicePolicyManagerTestCases -t \
com.android.cts.devicepolicy.DeviceOwnerTest# \
testCreateAndManageEphemeralUserFailsWithoutSplitSystemUser
and
runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest \
frameworks-services
Change-Id: I77a71a994fe0f4f1f8c5df7c4ccf493aafa8fefe
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4047bae5dbc6fddad969186e3061587a11e96c24 28-Jun-2017 Esteban Talavera <etalavera@google.com> Fix ACTION_PROVISIONING_SUCCESSFUL documentation

The current documentation implies that the intent is sent to the
application that requested provisioning (which would be in the
primary profile for managed profile provisioning). However it is
sent to the new DO or PO only.

Test: make docs
Change-Id: I9d1f66ec6f3d6d7fbaa1617d13a7da12d4acb490
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
12148fa980f68fc3aac051d88a392fbd507330ef 23-Jun-2017 Ying Xu <yinxu@google.com> Merge "Add flag to wipe eUICC data" into oc-dr1-dev am: 05ce703c87
am: a465181691

Change-Id: I8a54d9ab00223155e473b7ea4683a48def627288
f4f9cec234bf147f0067cef2791a26eaa2cde0a0 19-Jun-2017 yinxu <yinxu@google.com> Add flag to wipe eUICC data

Add a new flag in the DevicePolicyManager so that we can Use
EuiccManager#eraseSubscriptions(PendingIntent) to erase all the carrier data
from eUICC chip if the user choose to "ERASE" from the Android device manager.

Bug: 37277944
Test: E2E
Change-Id: Ia78090a00d956c645725be4fd591e02ded8ec467
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
482bb2343f60fbcdad88cd31e67f8d23a9037ec5 23-Jun-2017 Benjamin Franz <bfranz@google.com> Remove 'unused' import

Unused import android.provider.Settings previously caused checkstyle
script to bark on DevicePolicyManager. Remove the import and update all
usages of it in javadocs.

Bug: 37890361
Test: make docs
Change-Id: I3134d97274b2882060f5172170517ce501d5aafd
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
90396365357c745070145a87b6036e6bb07cbae8 13-Jun-2017 Jeff Sharkey <jsharkey@android.com> Revert "Hide APIs not intended to ship in DR."

This reverts commit 0c28d43fe1423198f99a0518887b69a4205bc6f7.
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0c28d43fe1423198f99a0518887b69a4205bc6f7 09-Jun-2017 Jeff Sharkey <jsharkey@android.com> Hide APIs not intended to ship in DR.

This CL will be reverted once it merges into the next release branch
to re-introduce the proposed APIs.

This CL also makes the following code changes to preserve API
compatibility:

-- It keeps the recently added RemoteViews.clone() synchronized logic
intact, but moves it inside the method to avoid changing the API
signature.

-- It reverts the RttCall.read() behavior to the oc-dev logic, since
we can't throw IOException until we get an API level bump. (The
original logic returned null instead of throwing.)

Test: builds, boots
Bug: 62427252, 62431886, 62427329
Bug: 62468911, 62431162, 62428935, 62429096
Bug: 37290820, 37359238, 36886243
Bug: 30143923, 35761231, 62192626, 29829689
Change-Id: I83d723f598cb0ee1fe198e65debd86ef7fd0420c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
28f6dc951223a017f9abc90599662cb3f4995ad1 06-Jun-2017 Jeff Sharkey <jsharkey@google.com> Merge "Give Doclava our manifest; more permission docs." into oc-dev am: 65d4cbba37
am: 67cb5f5210

Change-Id: Ic4c30cdb8bbfda5b3703eb3c7c36c1bf8ab3a216
ec68b46bc85b2317053da7e2933876fc6e51ac2f 06-Jun-2017 Jeff Sharkey <jsharkey@google.com> Merge "Annotate @SystemApi with required permissions." into oc-dev am: c1406978a4
am: 7a2e4a8486

Change-Id: Ib629e25dbf047c110feaf03e4ff744b5c6df9aeb
bfc4fcde9f756337fc8d0867ff04549b08688fff 06-Jun-2017 Jeff Sharkey <jsharkey@android.com> Give Doclava our manifest; more permission docs.

We've seen some @SystemApi methods protected with non-system
permissions, so give Doclava the platform AndroidManifest.xml so it
can parse the actual permission protection levels to look for APIs
that are letting in non-system apps.

Also document more @SystemApi permissions.

This is purely a docs change; no logic changes are being made.

Test: make -j32 update-api
Bug: 62263906
Change-Id: Ie0f0a5fb0033817bcc95060f2183a52ae4ae7b06
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d86b8fea43ebb6e5c31691b44d8ceb0d8d3c9072 03-Jun-2017 Jeff Sharkey <jsharkey@android.com> Annotate @SystemApi with required permissions.

Most @SystemApi methods should be protected with system (or higher)
permissions, so annotate common methods with @RequiresPermission to
make automatic verification easier.

Verification is really only relevant when calling into system
services (where permissions checking can happen on the other side of
a Binder call), so annotate managers with the new @SystemService
annotation, which is now automatically documented.

This is purely a docs change; no logic changes are being made.

Test: make -j32 update-api && make -j32 offline-sdk-docs
Bug: 62263906
Change-Id: I2554227202d84465676aa4ab0dd336b5c45fc651
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
412849937337b24957be8a1a5577661cf59da400 26-May-2017 Tony Mak <tonymak@google.com> Merge "Remove the old version of setAffiliationIds" into oc-dev am: 8d902a9e28
am: 754f6e22b0

Change-Id: I95a4b13ed76b6ce38c50047c9c6c923bf2ef7778
8c6969b69bce413df9e68063da7477d1b3c6764c 17-May-2017 Tony Mak <tonymak@google.com> Remove the old version of setAffiliationIds

Test: Can build

Build: 37622682

Change-Id: I07e630e96f5aed5d450652c465e00ffed13a2a2c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
75377cd23706355aea3361b68a75d14243a04462 12-May-2017 Kenny Guy <kennyguy@google.com> Merge "Cleanup API that is already @removed" into oc-dev am: 33b4964874
am: ddf5448ef9

Change-Id: I2e937e78c4506698c26bb9fdadf0d5ce3198b8ab
653c32432d210a1c9687324e03766b6f09da403a 11-May-2017 Kenny Guy <kennyguy@google.com> Cleanup API that is already @removed

EVICT_CE_KEY was @removed before API freeze
now removing it entirely.

Bug: 37663081
Test: compiles
Change-Id: I9ab318196cfe2da601be65b26a3b579f2f4bad82
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
60d88ea3dd8f3b0dc592141b9ea09c92b1e753c8 02-May-2017 Tony Mak <tonymak@google.com> Merge "Add back the throwIfParentInstance checking in getAffiliationIds" into oc-dev am: 91c6e44e9e
am: 1fe0c5cae8

Change-Id: I2fb7103267fbcf76ede3f168b4d7b4892c501943
62cf5861592dc283cbcdac43e70be786f19869ce 02-May-2017 Tony Mak <tonymak@google.com> Add back the throwIfParentInstance checking in getAffiliationIds

Fix: 37887947

Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.ParentProfileTest#testParentProfileApiDisabled

Change-Id: I05944c7a2447998d3ea948195fb25b09ab9735fc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5bb8294f926dcaf4a7288ba4457d84d57bb4ab53 29-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add managed profile whitelist to control NotificationListenerServices" into oc-dev
5cf5494744476e34c9a5e9e55f4f65799fea43d1 28-Apr-2017 Andrew Scull <ascull@google.com> Merge "Expand abbreviation in constant identifier." into oc-dev am: 2c20a0f885
am: 7d32c0bd04

Change-Id: I435db9c38e42cb0d2dbf82441470e45dc37728cc
17e1b5da53d508c3eccc9a6be276f0b6dacfc246 25-Apr-2017 Andrew Scull <ascull@google.com> Expand abbreviation in constant identifier.

The abbreviation is not in common use. Also remove FBE from
documentation as it also isn't used elsewhere.

Test: Build success
Bug: 37621349
Change-Id: Icf19be5e96e71dcd45aa7cac8f58b05b6d77d02b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9c6458dd58106538e790bbc702dbc10798e1bd18 30-Mar-2017 Esteban Talavera <etalavera@google.com> Add managed profile whitelist to control NotificationListenerServices

Only let notification listeners installed in the primary profile
see work profile notification if allowed by policy

Bug: 36657192
Test: runtest systemui-notification
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Change-Id: If719151644380e9162180a24d12f798e42867c0a
(cherry picked from commit 7e4cbadc6a561be62bf3b5e4c949bbb863018cc7)
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e04abdcd1ab4011adbfcf7c73469c0fcfe2ac92c 27-Apr-2017 Victor Chang <vichang@google.com> Merge "Add STATE_USER_SETUP_COMPLETE"
217f6066e8f403ab2d1c458d1c26576b9a536313 27-Apr-2017 Tony Mak <tonymak@google.com> Merge "setAffiliationIds and getAffiliationIds uses set instead of list" into oc-dev am: 424dd39e25
am: d272847267

Change-Id: I255abd2bc0996a1d4daf9486da5ee11b5ea079c0
60b2d05160e8daa4fef3d4f41041d9c4584dd797 27-Apr-2017 Tony Mak <tonymak@google.com> Merge "bindDeviceAdminService requires service to be proected by BIND_DEVICE_ADMIN" into oc-dev am: f4362fda59
am: 6fbfc05965

Change-Id: I0f286d3247bf3d4f6cd30e51f363a20d4b950c46
424dd39e256b880b0a18d8570daf399885a7567b 27-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "setAffiliationIds and getAffiliationIds uses set instead of list" into oc-dev
3165743c5040fb47a32ef30ccb7ffe11275a547e 25-Apr-2017 Tony Mak <tonymak@google.com> setAffiliationIds and getAffiliationIds uses set instead of list

Didn't use @remove because java doesn't support two methods differs from
the return type only.

Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerTest#testLockTask_unaffiliatedUser
Test: runtest -x frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java
Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerPlusProfileOwnerTest

Change-Id: Ic7c7221ef5e680a6765f028c2ab73d4c2f908c58
Fix: 37622682
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
eda0a9ae33273765afc7ec65081408f3c24c5640 25-Apr-2017 Tony Mak <tonymak@google.com> bindDeviceAdminService requires service to be proected by BIND_DEVICE_ADMIN

Test: cts-tradefed cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerPlusProfileOwnerTest

Fix: 37624960

Change-Id: I0df88d2a019a0c5f8f997db1efede35a20441fa8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
13f215c04d29817ae73c0c9db061672ca86d9b60 26-Apr-2017 Makoto Onuki <omakoto@google.com> Merge "DeviceAdminService must be protected with BIND_DEVICE_ADMIN." into oc-dev am: 781c8cb65e
am: 1ddaa67a59

Change-Id: Ice1a513a00e4b8962b11db6091f0bfe9e0f279f1
fe73970116c49b20465fba137e9ed5abd7bcbf4f 25-Apr-2017 Makoto Onuki <omakoto@google.com> DeviceAdminService must be protected with BIND_DEVICE_ADMIN.

Bug: 37625902
Bug: 36226832

Test: cts-tradefed run cts-dev --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l DEBUG -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceAdminServiceDeviceOwnerTest
Test: cts-tradefed run cts-dev --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l DEBUG -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.DeviceAdminServiceProfileOwnerTest
Change-Id: I0bee75d758b565c6587d0e9cabf63bec351a0669
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
add429d164c48110d70ca26f008904972dd5bbae 25-Apr-2017 Rubin Xu <rubinxu@google.com> Merge "Add param javadoc to DevicePolicyManager.setBackupServiceEnabled" into oc-dev am: a31f49a0df
am: e45651ba8f

Change-Id: I2c4e924c5e6a3317aca31ca56676e73e641e261e
dd0064d5b65e333ef7c71f2ab730f5b53bc52504 25-Apr-2017 Rubin Xu <rubinxu@google.com> Merge "Clarify time unit for StrongAuthTimeout APIs" into oc-dev am: 2c20a6db28
am: 0a555a6595

Change-Id: I6e22acaa9a183f97874f75ba71dc9ca1434ff60e
a31f49a0df23ffbb27f018900a181693e6c32d9e 25-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add param javadoc to DevicePolicyManager.setBackupServiceEnabled" into oc-dev
5d39ea769ebaee2d63b93f4c81745b0895aa330d 24-Apr-2017 Rubin Xu <rubinxu@google.com> Clarify time unit for StrongAuthTimeout APIs

Bug: 37624569
Test: make -j32 docs
Change-Id: I9bdf191697e698fcc38b279c471a8ce6566927c8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0367f077910c4c86bbb8c25b4286c8d35272f643 24-Apr-2017 Rubin Xu <rubinxu@google.com> Add param javadoc to DevicePolicyManager.setBackupServiceEnabled

Bug: 37624668
Test: make -j32 docs
Change-Id: Ie3457f4f5eba63365ed7920431037759475fa30b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
18800097c347108807b6d9afec597f70130e3f6b 11-Apr-2017 Victor Chang <vichang@google.com> Add STATE_USER_SETUP_COMPLETE

ManagedProvisioning launches SetupWizard by action STATE_USER_SETUP_COMPLETE

Bug: 29829689
Test: runtest managed-provisioning
Change-Id: I06656842a1855fbc9a0675d3d9a188b1f6fbe033
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
89d1d319555b0108f89c839be7c7dfdff5d65a8f 07-Apr-2017 Esteban Talavera <etalavera@google.com> Merge "Add managed profile whitelist to control NotificationListenerServices"
7e4cbadc6a561be62bf3b5e4c949bbb863018cc7 30-Mar-2017 Esteban Talavera <etalavera@google.com> Add managed profile whitelist to control NotificationListenerServices

Only let notification listeners installed in the primary profile
see work profile notification if allowed by policy

Bug: 36657192
Test: runtest systemui-notification
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Change-Id: If719151644380e9162180a24d12f798e42867c0a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ae23290ef53bb7e1dde9b53f47d274d16beb14ba 05-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Tweak javadoc of setResetPasswordToken" into oc-dev
f7b036db0b030b6d1f0cf25e557aa30a617f96a6 05-Apr-2017 Rubin Xu <rubinxu@google.com> Tweak javadoc of setResetPasswordToken

Bug: 34600579
Test: make -j32 docs
Change-Id: Ib4593c20fb78f52d5e75cafdfea32d747cc340c9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bfd61933323669fbab3c25427ceef690851ec02b 04-Apr-2017 Alejandro Fernández <alejandrofs@google.com> Updating javadoc string for DevicePolicyManager.EXTRA_PROVISIONING_SUPPORT_URL to indicate that only HTTPS urls are supported.

Bug: 36802087
Test: [Not required] Javadoc update
Change-Id: I379ee7e4895b2aff3017d22a5891eb19f10f8390
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fc73d799e95f512628da326b0e69ea314f92a5aa 22-Mar-2017 Makoto Onuki <omakoto@google.com> Persistent connection to DO/PO service.

Test: Manual test with customize API tests; CTS coming.
Change-Id: I1d7eaa4b1fdd20726c1832c736d32f934c6a82f9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0ec0000c225370375c9813c95651d55ee753e600 24-Mar-2017 Bartosz Fabianowski <bartfab@google.com> Allow system UID to call isSecurityLoggingEnabled()

This CL allows code running under the system UID to call
isSecurityLoggingEnabled(), so that Settings can find out whether
logging is on or off.

Bug: 36584321
Test: m RunSettingsRoboTests

Change-Id: Icf8b7d6cef0f4e23f57bcf0498ffdcf124d16d38
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
761ce7787537493208ece8a631d47047cd07c0b3 13-Mar-2017 Mahaver <mahaver@google.com> Deprecate DPM.EXTRA_PROVISIONING_EMAIL_ADDRESS

Bug: 34920067
Test: No tests for this API.
Change-Id: If28f9a95b3f620de5dfc1b2fa63c1d277ebde9b9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
172f7801c7376a33d7cfe07c8cb4525d14db0c8f 06-Mar-2017 Bartosz Fabianowski <bartfab@google.com> Rename DPM.isDefaultInputMethodSetByOwner()

Settings.Secure.DEFAULT_INPUT_METHOD is a misnomer. It does not really
record a permanent default of any sort - it just indicates the currently
chosen IME. Thus, isDefaultInputMethodSetByOwner() should more
appropriately be called isCurrentInputMethodSetByOwner().

Furthermore, it turns out that setting a different IME for a user and
the user's work profile is unsupported. Thus, it is sufficient for the
intended use case to just retrieve the calling user's default IME.
There is no need for a |user| parameter.

Bug: 32692748
Test: unit tests (see DevicePolicyManagerTest.java for invocation)
Test: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases

Change-Id: Ia0846d38a1361042429dae7430a8b055575ef2e0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
05dc9f764c9d399add8b7495e680f66d098c55eb 22-Feb-2017 Bartosz Fabianowski <bartfab@google.com> Add API for checking which CA certs were installed by the DO/PO

With this API, the system can determine whether a CA cert was
installed by the user or the user's DO/PO.

Bug: 32692748
Test: unit tests (see DevicePolicyManagerTest.java for invocation)
Test: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases

Change-Id: I3bcae5ac18ec2b110154184fc515df804fd73da6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1cd368b0747175c2bf780f497e383de539a35178 24-Feb-2017 Robin Lee <rgl@google.com> Merge "Thorough javadocumentation for network logging API"
ab6798951a12b55c309975dd9fe6eeb2de926420 24-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix broken RestrictedLockUtils KeyGuard APIs"
a40a2fba00edfba9426bbf41a010a0a44cbe6952 08-Feb-2017 Robin Lee <rgl@google.com> Thorough javadocumentation for network logging API

Explaining what the limitations of the underlying network logging
implementation are and what alternatives exist for the cases where
best-effort isn't an option.

Test: make docs
Change-Id: I000345ae5ba15bdc9e31dedf6de394d2538729a9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
acdeac6809f4cb6c96f47b6cdf72572c9969c6eb 21-Feb-2017 Robin Lee <rgl@google.com> Fix broken RestrictedLockUtils KeyGuard APIs

They were all broken in that they returned profile admins for parent
queries even when they clearly shouldn't.

Examples:
- disable unredacted notifications
- disable fingerprint

This doesn't seem to have been tested beyond the bare basics of one
user with one device admin. Added some reasonable coverage. It could
still do with more.

Test: make RunSettingsLibRoboTests
Bug: 34929375
Change-Id: I1b0e986056ffa62d47091c0010977ac810ebd690
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0b1356ff1f3cd2fd06d770af1ad466822173cc3a 21-Feb-2017 Suprabh Shukla <suprabh@google.com> Fix 'Modifying dpm.setSecureSetting call for install_non_market_apps'

The previous change was reverted as it broke work profile provisioning.
Clearing binder calling identity before calling into settings provider
should fix the issue.

Test: runtest managed-provisioning
Test: runtest -x services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java
Test: Manually tested that work profile is inflated with expected values
of install_non_market_apps

Bug: 33947615
Bug: 35590590

Change-Id: I3c31a73fef0c25c0e682e18f637272adad39b28d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5663e051099cdf442bc3316a88e1a7600c58aaaa 20-Feb-2017 Victor Chang <vichang@google.com> Revert "Modifying dpm.setSecureSetting call for install_non_market_apps"

This reverts commit 2e7d6d64b9b16ea27634bc0e8843717a465142b4.

Bug: 35590590
Fix: 35590106
Test: runtest managed-provisioning
Test: manual verified that work profile can be inflated
Change-Id: Ie780b94053e65bca2f96b32055937c0c9e8beae8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dd903d4f0ee4cebcef03e54f5b07f4bcc14c5dbc 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Modifying dpm.setSecureSetting call for install_non_market_apps"
2e7d6d64b9b16ea27634bc0e8843717a465142b4 10-Feb-2017 Suprabh Shukla <suprabh@google.com> Modifying dpm.setSecureSetting call for install_non_market_apps

Starting from O, install_non_market_apps is deprecated and will not be
checked by the package installer. Device admin apps should be using the
user restriction instead.
Since on managed profiles, the default value blocked install from
unknown sources, the system will set the user restriction on behalf of
the profile owners (if the profile has one).
For non-managed profiles, the user had access to the settings to change
the value of install_non_market_apps. So going forward, any request to
change it's value by dpm#setSecureSetting in such users is going to be
ignored.

Test: Manually tested that:
1. For a profile with PO, when install_non_market_apps was set to 0,
user restriction is set on upgrade
2. For a profile with PO, when install_non_market_apps was set to 1,
user restriction is not set on upgrade
3. After upgrade, newly created managed profiles with PO have user
restriction set

Bug: 33947615
Change-Id: I063e9ee608b52086ffdf8ed2b24e2928574c58cd
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a4f3891d28054027cccbb1f34436046cf2b59d44 17-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Mark clearDeviceOwnerApp/clearProfileOwner as deprecated"
4f7e1fc9af698e08576c9beadef872f5c4ea04a8 17-Feb-2017 Bartosz Fabianowski <bartfab@google.com> Merge "Add API for checking whether the default IME was set by the DO/PO"
5b7f2d08580ca7874fb175dcfeea179033e2b55b 17-Feb-2017 Esteban Talavera <etalavera@google.com> Backup service APIs not available on parent profile instance

Bug: 35432611
Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.ManagedProfileTest#testParentProfileApiDisabled
Change-Id: Ia1621183dee17dcd183a668f1714b563f79e5b17
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a5b0963c0c49e379912239755caee2fe5b873353 10-Feb-2017 Esteban Talavera <etalavera@google.com> Mark clearDeviceOwnerApp/clearProfileOwner as deprecated

Bug: 33175679
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Change-Id: I05e10638d838ccf8dc67b7a01b3ffeb7cbea8500
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
467d4ab03d5746c50a66d0f9662ea2366e800ab6 16-Feb-2017 Makoto Onuki <omakoto@google.com> Merge "Make the DPM account strings system-APIs."
aff5e9c21c28f21f7a3688d84e747727cf17f382 25-Jan-2017 Bartosz Fabianowski <bartfab@google.com> Add API for checking whether the default IME was set by the DO/PO

With this API, the system can determine whether a user's default
IME was set by the user or the user's DO/PO.

Bug: 32692748
Test: DPMS unit tests and CTS CtsDevicePolicyManagerTestCases

Change-Id: Ibd703ff5c9e4c072599ad8d6023c94a97d728109
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aab7a4146ccd14f94ac87f4c52895f1bb5d37645 30-Dec-2016 Rubin Xu <rubinxu@google.com> Add escrow token API in DevicePolicyManager.

Take advantage of the new authentication flow in LockSettingsService
and allow PO or DO to provision escrow tokens on the device. The
escrow token grants them the ability to change device lockscreen
(if used by DO) or work profile challenge (if used by PO). The
new password reset mechanism is even usable before user unlocks,
and it preserves authentication-bound keys in keystore.

Test: runtest frameworks-services -c com.android.server.SyntheticPasswordTests
Test: runtest frameworks-services -c com.android.server.devicepolicy.DevicePolicyManagerTest
Test: cts-tradefed run cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedDeviceOwnerTest#testResetPasswordWithToken
Bug: 33126620
Change-Id: Iaa684c51946f726cbd909e9ac70ad3e9ca3de1ac
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
47c203d4b0476d557a5e2d5d8250dc48d74b49f4 14-Feb-2017 Makoto Onuki <omakoto@google.com> Make the DPM account strings system-APIs.

Bug: 33670246
Test: After making the CTS change in the same topic:
cts-tradefed run cts --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -l INFO -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.AccountCheckHostSideTest

Change-Id: Icefb6aec04a5ec805313e027424e99bdbf769e67
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
84e706fb9b1cd6e3c7e6a4cd97bee6f22732b288 07-Feb-2017 Esteban Talavera <etalavera@google.com> Merge "Unhide getLockTaskPackages"
f810cc9a5b0f8f295cb53e31b4ba974a1598e233 07-Feb-2017 Rubin Xu <rubinxu@google.com> Merge "Fix uri permission grant on remote bug report uri"
bfb666da53c6ca65ab4c469fc6e2c0631aeaffc0 03-Feb-2017 Esteban Talavera <etalavera@google.com> Unhide getLockTaskPackages

getLockTaskPackages is currently hidden, and can only be
called by a device or profile owner, which doesn't make
much sense. Unhidding it to be consistent with the rest
of the DevicePolicyManager APIs that have a getter for
each setter.

Bug: 34614754
Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerTest#testLockTask_affiliatedSecondaryUser
Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerTest#testLockTask_unaffiliatedUser
Test: Test: cts-tradefed run cts-dev --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerTest#testLockTask_deviceOwnerUser
Change-Id: I6e03c2f47c0f9e7a635e798a1bf7f131a8e37c65
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7226c7dc9fd85bdd1639632b0e5761526fdcba30 06-Feb-2017 Rubin Xu <rubinxu@google.com> Fix uri permission grant on remote bug report uri

System server is no longer allowed to grant uri permission directly. As a result
we use grantUriPermissionFromIntent() to grant permission from the shell UID,
who is the owner of the bug report content.

Also fix a security bug where the broadcast to notify user consent of remote
bug report mismatches the <protected-broadcast> definition, causing it to be
sendable by anyone.

Bug: 34159108
Test: manual - Install TestDPC and request bugreport, try accept and decline
once the report is ready (Bullhead).

Change-Id: I66e3f2a16d4547549f09d3c96d52aed2330caedf
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bdcada976298716b9fb566fd6264e31098df4391 01-Feb-2017 Esteban Talavera <etalavera@google.com> Affiliated profile owners can set lock task packages

Mentioned that in the documentation, cleaned up the code
a bit and added unit tests

Bug: 34614754

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Change-Id: I91232bbe494398015094ab977c6a2adce339811f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9e62c3111e6d32008332689066cc96e924868180 26-Jan-2017 Edman Anjos <edmanp@google.com> Update in DPM delegation documentation.

Add note on DPM#setDelegatedScopes documentation regarding the
broadcast sent to the delegate package to notify its new scopes; and
change the admin ComponentName annotation to @Nullable in
DPM#getDelegatedScopes.

Bug: 33099995
Test: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDelegation
Change-Id: I28fe3a631c05a9e6b8dae766ce6c42881f2e3a00
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b3231029b5642474264b3d574fb7d5b68b0bfc57 30-Jan-2017 Esteban Talavera <etalavera@google.com> Merge "Profile owners on a user can communicate with device owners"
98607130feb088d3062d603d6a9ee2f7426162fe 27-Jan-2017 Victor Chang <vichang@google.com> Update doc to allow system image app to display terms in ManagedProvisioning

Bug: 34320095
Test: javadoc update only. built successfully
Change-Id: I9f023a12adbbd5f3d5ed3594508642b8dd573896
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2f897917fd47c07c11900daf1df75c45154aaff7 26-Jan-2017 Esteban Talavera <etalavera@google.com> Profile owners on a user can communicate with device owners

Allow device owners and profile owners on a user
to communicate with each other, rather than restricting
it to device owners and managed profile owners as it is
at the moment

Bug: 34429083

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Test: cts-tradefed run cts -a armeabi-v7a --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerPlusManagedProfileTest
Change-Id: I81561a9838c3ccb623354a1b718da2fc6a5af1fe
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
73145f4e60b874a408d26842d1cfc9c9506bfd9a 17-Jan-2017 phweiss <phweiss@google.com> Create public API for policy transparency outside of Settings

The new DPM.createAdminSupportIntent() returns an intent that shows the
"This action was disabled by your admin"-dialog from settings.
This enables apps to inform the user about the cause of restricted
functionality.

A new extra for the intent allows to specialize the dialog for different
restricted features, instead of a generic message for all features.

Bug: 31215663
Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services

Change-Id: I3de7aeec0f88b8f013a63957aec803cd123fbedc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
52088e4859ab81f2ec23a1063c1e1ffd8f23cf3f 13-Jan-2017 Edman Anjos <edmanp@google.com> Add DPMS delegation scopes.

Implement the permission grant, package access, enable system app, and
keep uninstalled packages delegation scope APIs in the
DevicePolicyManagerService.

This feature gives a device owner or profile owner the ability to
delegate some of its privileges to another application.

Bug: 33105287, 33105284, 33105719
Test: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDelegation
Change-Id: I50d2903eb73ae7844ec1f6fe07e41101ea2760ea
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a5f2fb1a43aebe0481c45376812ad7d58e699647 19-Dec-2016 Edman Anjos <edmanp@google.com> Add block uninstall delegation in DPMS.

Implement the uninstall blocker delegation scope API in
DevicePolicyManagerSercice.

This feature gives a device owner or profile owner the ability to
delegate some of its privileges to another application.

Bug: 33105718
Test: cts-tradefed run cts-dev --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDelegation
Change-Id: Ieb347ce3fb6219fe7f04cafbcd1e6b7359b31a10
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f994677626a6babc5121647646f17a7de85065a7 28-Nov-2016 Edman Anjos <edmanp@google.com> Refactor DPMS Cert Installer and App Restrictions delegation.

The DevicePolicyManagerService currently supports delegation of
certificate installation and application restriction management, both
of which are individually handled by DPMS.

Upcoming framework features will add four more delegation types,
namely: block uninstall; app permission management; app access
management; and system app enabler. At this moment it makes sense to
refactor the underlying delegation system in DPMS so that current and
future delegates can be handled in a more generic way.

Bug: 33099995
Test: DPMS unit tests
Change-Id: I9e350143572c6690febdd59d1ed5149af8ee4388
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
841cb0a37f5602de1b410f558930f8e5d09e013a 17-Jan-2017 Jason Parks <jparks@google.com> Allow the profile owner to enforce auto time.

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services

Change-Id: I1cb04cce5d232fba668535dd391459a050d62dd7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dea0c3b654abefa488edc1e037424fbbceb759ed 13-Jan-2017 Charles He <qiurui@google.com> DPM: Notify DO/PO of security updates.

We add a variant of notifyPendingSystemUpdate method which takes an
additional isSecurityPatch boolean flag. This information, if available,
will be persisted and available to device and profile owners when they
call getPendingSystemUpdate method.

Test: gts-tradefed run gts -m GtsGmscoreHostTestCases -t com.google.android.gts.devicepolicy.DeviceOwnerTest#testPendingSystemUpdate
Test: gts-tradefed run gts -m GtsGmscoreHostTestCases -t com.google.android.gts.devicepolicy.ManagedProfileTest#testPendingSystemUpdate
Bug: 33102479
Bug: 30961046
Change-Id: If3f1b765bb18a359836ac43ac9a0a9f29e9f8428
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
618fb8b1941a98a90855c47adaf0c28359979d7e 21-Jan-2017 David Ouyang <dyouyang@google.com> Merge "Promote DevicePolicyManager.packageHasActiveAdmins for Play Store"
61238c2d13c81033698fd78b29c38c124d3740ea 20-Jan-2017 Michal Karpinski <mkarpinski@google.com> Merge "Unhide enabling backup service in DO APIs"
b71fedc494189538b7219919ba1c831f9c6c91f9 05-Jan-2017 Michal Karpinski <mkarpinski@google.com> Unhide enabling backup service in DO APIs

Bug: 28628532
Change-Id: I5940735994c7e63fae86549fedcf138ad12151cd
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b271f34625c6661ed1ea7ec3886d491a4970d833 19-Jan-2017 Pavel Grafov <pgrafov@google.com> Merge "Store pending OTA state and make it accessible via polling api."
4b0624fee452138951de919bbe74003258e9bc19 16-Jan-2017 Bartosz Fabianowski <bartfab@google.com> Allow system to retrieve permission grant state

To inform the user which apps were granted permissions by the admin,
the Settings app needs to access this information without being a DO/PO.

Bug: 32692748
Test: FrameworksServicesTests unit test

Change-Id: I3770ec6343b85be9c6f7655675ed6db5cb50612c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d65799ee812132bc54fd9d67d4ef9b19906b9da5 02-Dec-2016 Pavel Grafov <pgrafov@google.com> Store pending OTA state and make it accessible via polling api.

Change-Id: Ieb71dfb902371a683b17561f51ba9c2c730eb37b
Test: gts-tradefed run gts -a armeabi-v7a -m GtsGmscoreHostTestCases -t com.google.android.gts.devicepolicy.DeviceOwnerTest
Bug: 31000521
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d36dd15d9bf9f65270b9bee16d6419b96b18bd86 15-Dec-2016 Esteban Talavera <etalavera@google.com> Make device wide DO features available if all users affiliated

Currently, those features are available on single user devices only
(since they collect privacy sensitive data device wide). Now making
them available as long as all users are affiliated.

It'll take a certain amount of time between user creation and the DPC
of that new user setting the appropriate affiliation ids. The DO won't
be able to access the logs during that time (and won't get any "logs
ready" callback). Once the affiliation ids are set, if they match,
logs become available again - this includes logs collected while the
user was being setup. Some logs might be lost though if the amount of
data exceeds the internal limit.

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services

Test: cts-tradefed run cts -a armeabi-v7a --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.DeviceOwnerTest

Bug: 32326223

Change-Id: Idfe881dd6497d3ad2bead10addfd37b98b8a6e2b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3a83a33119e74ce49f4ad22b9f9dc4f93e35f1c6 12-Jan-2017 David Ouyang <dyouyang@google.com> Promote DevicePolicyManager.packageHasActiveAdmins for Play Store

Promote API to @SystemApi so Play Store can call it. This is
done as a prerequisite for being able to call
ActivityManager.forceStopPackage.

Test: Patch in GTS tests in ag/1775696.
Bug: 34228363
Change-Id: Ic309f350947a5ae937493d6696b7af914fa7ab54
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e12c790464d0598cbe15f078e5dc66f93af68b37 11-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Make hidden DevicePolicyManager#getDeviceOwnerComponentOnAnyUser system API."
b82e176b5580e76a2f336a292eb1b6947d091680 11-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add new system api to pass parameters from Oobconfig to ManagedProvisioning"
54402aab14deb9f21b0a9b451f80113ab9821b04 10-Jan-2017 Andrew Scull <ascull@google.com> Merge "Evict CE key on request and when work mode is turned off."
38cfd9c51a8c6f7e48b5a7d79bb166a1252d4bd0 04-Jan-2017 Victor Chang <vichang@google.com> Add new system api to pass parameters from Oobconfig to ManagedProvisioning

- trying to remove the provisioning in Oobconfig
- Pass the provisioning information in ManagedProvisioning instead

Bug: 32760855
Test: update api successfully
Change-Id: Ic108856a7785574ee3f104f1156e155f2f2165b0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bf9928de18adfc39de17300325dfbd229af5db99 22-Dec-2016 Tony Mak <tonymak@google.com> Make sure ServiceConnection callback is called in main thread

Fix: 33568999

Test: cts-tradefed run cts --module CtsDevicePolicyManagerTestCases
--test com.android.cts.devicepolicy.DeviceOwnerPlusManagedProfileTest

Change-Id: I14c8b5b1f78192429e68a3057430406245a909c8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
85a63bc1a06870b5a86926b0bce94a2bf559e3f0 24-Oct-2016 Andrew Scull <ascull@google.com> Evict CE key on request and when work mode is turned off.

DPMS.lockNow takes a flag which can request the managed profile CE key to
be evicted.

Test: com.android.cts.devicepolicy.ManagedProfileTest#testLockNowWithKeyEviction*
Bug: 31000719
Change-Id: I68f4d6eed4b041c39fd13375f7f284f5d6ac33da
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cbe76a0f1e83f74648ea24a9e8bd4814f9d87c8c 20-Dec-2016 Philipp Weiß <phweiss@google.com> Merge "Show notification when network logging is enabled"
a0cb251ca6a8ea8df17ff8089573bc50f2f1849f 14-Dec-2016 phweiss <phweiss@google.com> Show notification when network logging is enabled

A notification is shown after network logging is enabled
and after the next three reboots that are at least one day apart.

Clicking it sends an intent to quick settings to shown its device monitoring
dialog.

Bug: 29748723
Bug: 33126577

Test: Manual, CTS-Verifier tests will be added later
Change-Id: I2bf517bd27ab23ad3f66270602dbf062efab8cbb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7cd4536e80eebb3cfb6df451560a159d2c27efd3 19-Dec-2016 Andrew Scull <ascull@google.com> Merge "Don't save the password metrics to disk."
01576869a3f46923d1d893866677e3bf9a00fc2b 15-Dec-2016 Esteban Talavera <etalavera@google.com> Enforce DISALLOW_ADD_MANAGED_PROFILE

Only the device owner should be able to create a managed
profile if that restriction is set

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services

Bug: 31952368

Change-Id: Ia5170e54594ccba1e5bcedffaec98c2af42264c0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5daf273b7e3272269c53eda20ce494d0e7a365b5 14-Nov-2016 Andrew Scull <ascull@google.com> Don't save the password metrics to disk.

Only store the metrics in RAM, computing them at first log in.

Test: com.android.cts.devicepolicy.DeviceAdminHostSideTestApi24
Bug: 32793550
Change-Id: Iaf9516c193f054331e3e2c68cb3f627bd543b408
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
23561db6f7165fe415753ebe036717eba184d3c5 16-Dec-2016 Polina Bondarenko <pbond@google.com> Make hidden DevicePolicyManager#getDeviceOwnerComponentOnAnyUser system API.

Test: run gts -m GtsGmscoreHostTestCases -t
com.google.android.gts.devicepolicy.DeviceOwnerTest#testDevicePolicyManager
Bug: 33404838

Change-Id: Ib613f00495df9bce1108aeaf83ad4763cf02d835
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ab102379001b462cdbd60d2a19e34f76c43879aa 15-Dec-2016 Victor Chang <vichang@google.com> Merge "Add EXTRA_PROVISIONING_DISCLAIMERS"
1548d5c43b789b6d5b3ab0929dcb55a2f12c57a9 15-Dec-2016 Nicolas Prévot <nprevot@google.com> Merge "Use affiliation ids when checking bind target users."
06fd71abdf4c76d5f4ec357146f61280fb5580fa 14-Dec-2016 Esteban Talavera <etalavera@google.com> Merge "Create DISALLOW_{ADD,REMOVE}_MANAGED_PROFILE user restrictions"
c10f6693fc747025bd069a8471106503fc629d20 09-Dec-2016 Victor Chang <vichang@google.com> Add EXTRA_PROVISIONING_DISCLAIMERS

- It's Bundle[]
- Each Bundle has EXTRA_PROVISIONING_DISCLAIMER_HEADER
and EXTRA_PROVISIONING_DISCLAIMER_CONTENT for header and content
- the disclaimer header is a localized String

Bug: 32760305
Test: built successfully
Change-Id: Ibc4ed25027f5949a0faa92ebf1f5ea1d518368eb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d5b036014d632c7c28f8499f39bafd4b95ac49d1 06-Dec-2016 Nicolas Prevot <nprevot@google.com> Use affiliation ids when checking bind target users.

BUG:32764274
Test: adb shell am instrument -e class
com.android.server.devicepolicy.DevicePolicyManagerTest -w
com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner

Change-Id: Ic79b58dcb583b1d9eb9e7af0d1501cf8cfd0ee86
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6c9116a6430ca5cd55b1b926213a5e8de77e4fc6 24-Nov-2016 Esteban Talavera <etalavera@google.com> Create DISALLOW_{ADD,REMOVE}_MANAGED_PROFILE user restrictions

Bug: 31952368

Test: runtest -c com.android.server.devicepolicy.DevicePolicyManagerTest frameworks-services
Test: runtest -c com.android.server.pm.UserManagerTest frameworks-services
Test: cts-tradefed run cts --module DevicePolicyManager --test com.android.cts.devicepolicy.UserRestrictionsTest

Change-Id: I240ab99c2409bbabffbc574bef202f2457026905
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5291ee732d952fa987526e4c906f7ca884a758fa 28-Nov-2016 Lenka Trochtova <ltrochtova@google.com> DevicePolicyManager: make 3 hidden provisioning methods system API.

In order to unbundle OobConfig app, make the following
methods @SystemAPI:
- DevicePolicyManager#isDeviceProvisioned
- DevicePolicyManager#setDeviceProvisioningConfigApplied
- DevicePolicyManager#isDeviceProvisioningConfigApplied

Test: gts-tradefed run gts -m GtsGmscoreHostTestCases --test com.google.android.gts.devicepolicy.DevicePolicyManagerTest

Bug: 32972931

Change-Id: Ic33b6c570222e4aa31cf7975a39de0d9e2614534
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a4e169ed68ee57aa249e5e79fcd6bff5df46199e 24-Nov-2016 phweiss <phweiss@google.com> Add network logging icon to Quicksettings when enabled

Add the network logging icon in Quick Settings' footer if
network logging is enabled, possible next to the VPN icon.
Quicksettings has to be able to tell that network logging
is enabled, so this CL changes DPM.isNetworkLoggingEnabled() to be
callable from the device owner or from any app with the MANAGE_USERS
permission.

The icon is only a placeholder until the official icon is finished.

CTS Verifier tests will be added when all Network logging UX changes are
done.

BUG: 33126618
BUG: 29748723
Test: runtest --path frameworks/base/packages/SystemUI/tests
Change-Id: Ib35d323605ab11f883a4b6199d1db79b9e53c49b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9751197d30b750508f46dfa1112c4a8e7b4940d7 07-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fix javadoc of EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION"
803abe7378a2b3338bcf4c792a5a3a047683a8c3 06-Dec-2016 Michal Karpinski <mkarpinski@google.com> Merge "Unhiding network logging API"
abf86385f8ba14d4f4789df59adec619a682b238 06-Dec-2016 Mahaver Chopra <mahaver@google.com> Merge "Return error code from isProvisioningAllowed"
aa9cbc00e642a85898d3f3b17dbb8a40c8c3945b 05-Dec-2016 Victor Chang <vichang@google.com> Fix javadoc of EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION

Bug: 32299699
Change-Id: I700d1b6b82a656d3a1385bf37d830ae717f25d5d
Test: built successfully
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
849fd6f58e92476af3e3eeb802e71fddf372d6f2 03-Nov-2016 Mahaver Chopra <mahaver@google.com> Return error code from isProvisioningAllowed

Added hidden pre condition codes for PO and DO provsioning.
Added hidden api checkProvisioningPreCondition, which returns codes
instead of boolean. Managed provisioning can use this to show
useful debug information and user facing error dialogs.

Test: All DevicePolicyManagerTest pass

Bug: 27467633
Change-Id: I7d2a79921bc3ac2e12d506629a35563fc7ff62bf
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d55b73145204dce6593dcdb6923ce51f6f6851d7 25-Nov-2016 Michal Karpinski <mkarpinski@google.com> Unhiding network logging API

Unhiding network logging feature API on master in order to add CTS
tests and the like. Feature will still be CPd to MR2 as hidden.

Bug: 29748723
Change-Id: Iae3957d8e678c82b67654cd9f442436ba44ae728
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
89ee279d0554d96591f7bdae12c7276f602f6775 23-Nov-2016 Victor Chang <vichang@google.com> Add EXTRA_PROVISIONING_KEEP_ACCOUNT_ON_MIGRATION

Test: built successfully
Bug: 32299699
Change-Id: I22a470786c31e4acc010ac2efbc32eb5e47b8b1d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
365a3db47001c1298fd01146e866997a9cbc3c8c 30-Nov-2016 Bartosz Fabianowski <bartfab@google.com> Allow setting managing organization for the device

The Profile Owner of a managed profile can set a string that will be
shown in the UI to identify the organization managing the profile.
This CL extends the functionality to the Device Owner of a managed
device.

Bug: 32692748
Test: DevicePolicyManagerTest unit test + CTS test in separate CL

Change-Id: I47295da2fd6485ebf0e890da13990a044accaf17
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ffbaf9a06e7605f30ecc0644bd6c2c8785f5846f 30-Nov-2016 Mahaver Chopra <mahaver@google.com> Merge "Update java doc to reflect EXTRA_USER"
7074cafc1bd1be8ad428f23e5a650e953d51674d 29-Nov-2016 Mahaver <mahaver@google.com> Update java doc to reflect EXTRA_USER

Update java doc for ACTION_MANAGED_PROFILE_PROVISIONED to reflect the
fact that the extra EXTRA_USER will contain the managed profile's
user handle.

Test: NA, Just a java doc update.
Bug: 32301911
Change-Id: Icfda56dea69353ede02ddeee88a7adb489e72d36
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dd7f8dafd862fa1a6132b37b47f1b160a4065a9e 30-Nov-2016 Bartosz Fabianowski <bartfab@google.com> Allow DO to access DevicePolicyManager.isDeviceManaged()

This CL makes DPM.isDeviceManaged() accessible to the DO so that it
can be CTS-tested.

Bug: 32692748
Test: Device policy manager unit test + CTS & GTS in separate CLs

Change-Id: I5326e86b0ffee81d04bd48f0267044463a899b78
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e061a790416523cd4976e0376d661f3b92e72c2d 29-Nov-2016 Victor Chang <vichang@google.com> Merge "Add EXTRA_PROVISIONING_SKIP_USER_CONSENT"
b57bd791bf55215110839322ef7c0f72ed915a7b 29-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add user affiliation APIs"
c9bb378a8b3633bc427dd2439ab4ae8e3b17771a 11-Nov-2016 Esteban Talavera <etalavera@google.com> Add user affiliation APIs

Make setAffiliationIds public so that it can be used for COMP.
That way we can allow network logging and other features to
work on devices that have a DO and a managed profile.
Those features are currently restricted to single user devices but we'll
open them up to devices where all users are affiliated.

Also create a getter for that API.

Bug: 32326223
Test: m FrameworksServicesTests &&
adb install \
-r ${ANDROID_PRODUCT_OUT}/data/app/FrameworksServicesTests/FrameworksServicesTests.apk &&
adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyManagerTest \
-w com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner

Change-Id: Ie443be887a6ca61a7f7a07e137757dceab7eb3d3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
51d84f92f105bda9765fbba9cedf3b1f375e9651 16-Nov-2016 Victor Chang <vichang@google.com> Add EXTRA_PROVISIONING_SKIP_USER_CONSENT

Bug: 32299699
Test: built successfully

Change-Id: I9516831a75973c2e940da8283b2c42ac6f050c6f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d0835e45f7663cb6abef383b9d903429c824cd20 25-Nov-2016 Mahaver Chopra <mahaver@google.com> Merge "Add provisioning successful intent"
3c58cfe2d98219ec2628835d08ee964c0208ecd7 01-Nov-2016 Mahaver Chopra <mahaver@google.com> Add provisioning successful intent

Add a new activity intent action which will be launched after
provisioning has successfully completed.

Currently when provisioning is done we junt send an ordered broadcast
for PO and a normal brodcast for DO case. This results in HOME screen
being launched for 2 sec. To remove this jank we have introduced a
new intent action which can be directly received by the DPC in their
post provisioning activity.

Test: b/33138551, this bug tracks the cts coverage for the new action.

Bug: 30956199
Change-Id: I889b0cec74799bb7be93de48d46d5da68f17be92
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8d76e72251eb6f83580cd8b70000d6904fe24096 25-Nov-2016 Bartosz Fabianowski <bartfab@google.com> Allow DO to access bookkeeping information about its own actions

The getLastSecurityLogRetrievalTime(), getLastBugReportRequestTime()
and getLastNetworkLogRetrievalTime() methods are meant to be used by
system code. However, there is no harm in allowing the DO to access the
information they return - because it is information about actions that
the DO itself took.

The advantage of opening up these methods to the DO is that we can
CTS-test them.

Bug: 32692748
Test: DevicePolicyManager unit test + CTS test in separate CL

Change-Id: I1470fca2a82b9955f7aed5e8b50220bea8b56fc9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8d4527db199b67de3a142a37adaa887bd026c22c 24-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add getBindDeviceAdminTargetUsers API"
fc291bcbe007692ab7a6de0651769b1f2e09de49 21-Nov-2016 Esteban Talavera <etalavera@google.com> Add getBindDeviceAdminTargetUsers API

Add getBindDeviceAdminTargetUsers API. To be used
for the device or profile owner in a COMP setup to
know the UserHandle of their instance running on
the other profile.

Bug: 31952368,33033966
Test: cts-tradefed run cts --module DevicePolicyManager --test com.android.cts.devicepolicy.DeviceOwnerPlusManagedProfileTest

Change-Id: I05c9ac0f6c3cdce1ec17cf2910ca7a7214064af2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a20d8bb249ca440e7e850063b3edffb07d8c03ee 23-Nov-2016 Michal Karpinski <mkarpinski@google.com> Unhiding strong auth timeout API

Unhiding the API that was previously hidden (in order to ship in MR1).

Bug: 29825955
Change-Id: Ifce73b1917b939e68e9a8dd2cc7379717214b8b7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b21b241f0f12377c115e9c4f5bae26814fdab3fb 17-Nov-2016 Bartosz Fabianowski <bartfab@google.com> Keep track of admin actions for DO disclosures

This CL adds bookkeeping to DPMS which will allow us to tell the user
in the Settings UI whether/when the admin requested a bug report or
retrieved logs from the device.

Bug: 32692748
Test: Full DevicePolicyManagerTest unit test coverage; end-to-end tests
will follow as Settings CTS verifier tests

Change-Id: I89728fce4b7e0ff061b354c73caf3742e95a3a3e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
46aabe5ef4362014914b7df707c2de2341211d69 14-Nov-2016 Tony Mak <tonymak@google.com> Allow cross profile call between DO and PO

Allow DO to bind service of PO in managed profile and vice versa.
DO and PO must be the same package.

Bug: 31895999

Change-Id: I3ce2943aebd1249401d5814757a0ce25b9f85279
Test: cts-tradefed run cts --module DevicePolicyManager --test com.android.cts.devicepolicy.CorpOwnedManagedProfileTest
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a9ff206af26871695bfce54969428b8ad03e31e6 03-Nov-2016 Michal Karpinski <mkarpinski@google.com> [DPM] DO uses batch token to retrieve network logs, and can retrieve
the same batch many times

This allows DO to:
a) know that some logs were dropped (by trying with token and not
getting anything)
b) know how many logs were there in each batch (useful especially
for the dropped ones)
c) retry batch retrieval if it failed

Test: will be CTS tested once APIs unhidden
Bug: 29748723
Change-Id: I788359242e3b2a4cb638edb25e5db8b25646c29f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
02e17d27b1d9289059fd18d512ae978f0dfd666e 03-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "[DPM] Management and retrieval of network logs"
3694d8789f579f9a67ca79238b755e18b7c12b77 02-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "[DPM] DO can start network logging and listen for events"
f77ee4f1b79929a77f603e5e879f3616ae464e3e 12-Oct-2016 Michal Karpinski <mkarpinski@google.com> [DPM] Management and retrieval of network logs

This CL follows up on ag/1530343 and adds:
1) Various network events.
2) Retrieval method in DPM and APIs in DeviceAdminReceiver.
3) Extension of NetworkLogger and it's NetworkLoggingHandler.

Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/NetworkEventTest.java
Bug: 29748723
Change-Id: I42a1a477e7c75c109a3982f809c22732b814e8b2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dd9bb4fdd9f4b528734a7907d2bc92841ca648ab 12-Oct-2016 Michal Karpinski <mkarpinski@google.com> [DPM] DO can start network logging and listen for events

This CL adds:
1) Setter and getter in DPM to manipulate logging switch (retrieval
method to come in a subsequent CL(s)).
2) A way for DPM to register to listen for events.
3) Skeleton of NetworkLogger class (more to come in subsequent CL(s)).

Bug: 29748723
Change-Id: I5c04662ccc6febd2ba294b0eaca1ed1da9c16e47
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
88d601bbafa541ab2ad049ce83cf6e3214d70055 01-Nov-2016 Charles He <qiurui@google.com> Merge "Update API whitelist supported by parent profile"
408e8e4491b72407334c81522c79822061424efd 25-Oct-2016 Makoto Onuki <omakoto@google.com> Add @NonNull / @Nullable to DPM return types

Fix: 31331663
Fix: 32466757

Test: Signature change only; checkbuild.
Change-Id: I361cdd43b9fccf309ff3efefa3783d5399e65748
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8c76056c1919857d82cf2fe70f02a84d909097b4 25-Oct-2016 Charles He <qiurui@google.com> Update API whitelist supported by parent profile

1) Add #getPasswordMaximumLength() to the whitelist supported by the
parent profile
2) Throw SecurityException when #isAdminActive() is called on parent
profile

Change-Id: Idcc3ef48ce83963fcaa0259ec5f5781d95c83afa
Fixes: 32063080
Test: cts-tradefed run cts --module DevicePolicyManager --test com.android.cts.devicepolicy.ManagedProfileTest#testParentProfileApiDisabled
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5f9e6f37b276fac7be6db982c9cb7fbd93150c4a 02-Aug-2016 Andrew Scull <ascull@google.com> Refactor password metric computation.

This unifies previously duplicated code.

Bug: 30558331
Test: runtest -x frameworks/base/core/tests/coretests/src/android/app/admin/PasswordMetricsTest.java
Change-Id: I37678b83a03d4f05b9894d4b00e9a741d1a8df27
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
943aabd11cce3ab453762d3912395363720e1f5d 06-Oct-2016 Michal Karpinski <mkarpinski@google.com> Don't expose default strong auth timeout as constant

The admin can instead use the value of 0 to reset to default.

Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/devicepolicy/DevicePolicyManagerTest.java

Bug: 31430135
Change-Id: I0d6b29ca4eca65d7ca72a8975a0c28c9050a946c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aef3ce21dbde98568d6526bd054a1f22fc0d2c1c 22-Sep-2016 Nicolas Prevot <nprevot@google.com> Mention that setMasterVolumeMuted has no effect when set on a managed profile.

BUG:27262893
Change-Id: Ibbcf4f222e47e9e0b723ec4b0335f100e904bca1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4a134a93d23b8463ade9696316d4824a27cddec9 15-Sep-2016 Michal Karpinski <mkarpinski@google.com> Merge "Fingerprint Strong auth timeout"
f9c376b7869810c91e067500cf0edbf94c4f6cda 08-Sep-2016 Suprabh Shukla <suprabh@google.com> resolve merge conflicts of 37ad463 to master

Change-Id: I51b2097ac3ea4ce3ec8bb29e674d1cdd789aa1a1
5e7e0670c7b4b0f15c812fc83991afcc7fa24bf9 02-Sep-2016 Makoto Onuki <omakoto@google.com> Allow DO/PO to be installed with certain preconfigured accounts.

- Non-test-only DO/PO still can't be installed when there are
accounts.

- Test-only DO/PO can be installed even when there are accounts,
as long as all the accounts have the
"android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED" feature.
Some authenticators claim to have any features, so to detect it,
we also check android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED
and disallow installing if any of the accounts have it.

- Also add logs on certain important events in DPMS.

Bug 28928996

Change-Id: I62efce10e9cc22e994ea8cae91a4fafcce25dd77
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8f010dd25d18151cc47accc7d853b4f8f7fe8491 21-Jun-2016 Michal Karpinski <mkarpinski@google.com> Fingerprint Strong auth timeout

Allows PO and DO configure strong auth timeout for fingerprint.

Bug: 29825955
Change-Id: Ie6451d49aa95527adc3720d9a2a0848f58940510
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1970f97e4758224132329a3e0dbe9c3946c4499b 30-Aug-2016 Tony Mak <tonymak@google.com> Send ACTION_DEVICE_OWNER_CHANGED broadcast after clearing device owner

Change-Id: Iaac182c69a30e941da3a017a923247d813881521
Fix: 27261692
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3f98ea1eeef5bed165f77d1cf64b8d4b2dd3f0b4 30-Aug-2016 Victor Chang <vichang@google.com> Merge "forceUpdateUserSetupComplete should have no effect in user build"
3577ed2556f20f7ab09e58b6b286217c7e1560c9 25-Aug-2016 Victor Chang <vichang@google.com> forceUpdateUserSetupComplete should have no effect in user build

Bug:30031808
Change-Id: I908a495633e03ace770a8ec19196841d19dfd41d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a8202524608a4fc9178e6b18e13602c5a8abb404 18-Aug-2016 Vladislav Kuzkokov <vkuzkokov@google.com> Add DevicePolicyManager.setBackupServiceEnabled as hidden API.

BUG=28628532

Change-Id: I48c3423734e54b6a4d70e58d50c98c3e17790e0d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9bfc65f321ec7f4eb3bffb5148d8e3b90b0bdc0f 15-Aug-2016 Victor Chang <vichang@google.com> Add api to update user_setup_completed flag to allow e2e testing in ManagedProvisioning

Bug:30031808
Change-Id: Idd4b230931718a6d10f0fc41cdcf9bccb5c6354c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7d3d7ae5560db351daf26ba76cb8fa3356c2bacf 16-Aug-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Updating the javadoc of DevicePolicyManager#wipeData"
49ca529a850e60482ddcc8c0762105b4aa10f35f 10-May-2016 Jeff Sharkey <jsharkey@android.com> Avoid caching services with missing binders.

When fetching system services early during boot, if the underlying
binder interface hasn't been published yet, we end up caching a
manager class that is broken for the remainder of the process
lifetime, and innocent downstream callers end up using the broken
cached manager.

Fix this by using an explicit exception to quickly abort manager
creation when the underlying binder is missing. The exception is
only used to skip the remainder of the manager creation, and it
doesn't actually crash the process.

Bug: 28634953
Change-Id: I0cb62261e6d6833660704b93a11185aa11a2ac97
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
556b05a9d6f25c19a4a8bac97c75d342e1433bde 11-Aug-2016 Suprabh Shukla <suprabh@google.com> Updating the javadoc of DevicePolicyManager#wipeData

Updating the javadoc of DevicePolicyManager#wipedata to clarify
that the calling user, if not a primary user, will get deleted

Bug: 29253518
Change-Id: I84b316b1a81ebeef5aa3d802058c201f89c257b0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3f81f4edafbcc55940ad625a8e6c5cf0fdfcc3ce 29-Jul-2016 Andrew Scull <ascull@google.com> Explain the IAE thrown by resetPassword.

DevicePolicyManager.resetPassword can throw an IllegalArgumentException
which is now documented.

Bug: 30105812
Change-Id: Ied02a0586ad62cca636c46da4faa16df64e17e5a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
60df33da547f066e6840539b02bd9e4da9dd00d5 29-Jul-2016 Andrew Scull <ascull@google.com> Explain the IAE thrown by resetPassword.

DevicePolicyManager.resetPassword can throw an IllegalArgumentException
which is now documented.

Bug: 30105812
Change-Id: Ied02a0586ad62cca636c46da4faa16df64e17e5a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4e9af0657615e52c0cd5eebe34a277e197876bc5 19-Jul-2016 Fyodor Kupolov <fkupolov@google.com> Updated JavaDoc for getApplicationRestrictions

The method performs disk I/O and shouldn't be called on the main thread.

Bug: 28303952
Change-Id: Iab4d79158b32858baac4147ab73c6ac7aaa51b5b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5b6e68fd419a01012c68f357c922a8c998a319f4 14-Jul-2016 Rubin Xu <rubinxu@google.com> Merge \\"Fix typo in DevicePolicyManager\\" into nyc-mr1-dev am: 74eb4a5226
am: 3ad94d299d

Change-Id: I3cd6b39d0b979a07a7021dbaf6f7766ea9ebf7e2
d3609d4cc3c66bd53f753fa0fc6ebfbb94568a7a 13-Jul-2016 Rubin Xu <rubinxu@google.com> Fix typo in DevicePolicyManager

Change-Id: I4aa9530794f1487d17765a532ad65a303f4f7ff8
Fix: 30115660
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e4da41e6be7b6cc5d2f26d1c24910785d04c751c 13-Jul-2016 Benjamin Franz <bfranz@google.com> Merge \\"Add hidden API to store whether provisioning config has been applied\\" into nyc-mr1-dev am: 17ca90430b
am: b3fa8d87e0

Change-Id: If65317cf6ec5237cff36fba86ed219ab078776ad
17ca90430ba88c347062ea222fe0bc2be8d52a57 13-Jul-2016 Benjamin Franz <bfranz@google.com> Merge "Add hidden API to store whether provisioning config has been applied" into nyc-mr1-dev
634841d448c4efcb56e8b090f8b4474bfdb48bc0 12-Jul-2016 Amith Yamasani <yamasani@google.com> Merge \\"Merge \\\"Include new constant for encryption status in the getter\\\'s javadoc\\\" into nyc-dev am: e278cf7665\\" into nyc-mr1-dev am: d2e6a62838
am: b493ce833b

Change-Id: I10fdd234351c534269187c0e1fb2d8745be51b54
3bfbc531b30e83c87ae1ad134f23184b1f152e36 12-Jul-2016 Amith Yamasani <yamasani@google.com> Merge \"Include new constant for encryption status in the getter\'s javadoc\" into nyc-dev
am: e278cf7665

Change-Id: I22c884f8982d3a1aaf7baf1b981a3d3d8d8ab624
2aa9bab8a1edd7a9dc62f4a2ae51defa026a7de6 11-Jul-2016 Benjamin Franz <bfranz@google.com> Add hidden API to store whether provisioning config has been applied

Bug: 29629204
Change-Id: Iaf4164357868b17dbc6615a77babb0e7cbc183b7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1f984d7f6bb5b86dcb0da06402cb941b3aa88009 12-Jul-2016 Mahaver Chopra <mahaver@google.com> Merge \\"Add an api to verify if ro.device_owner was set\\" into nyc-mr1-dev am: c1182a8128
am: 325af20235

Change-Id: I18fc9c4d7662c6b05e3b66d9a1fcddb9c9e43730
75db125ebb6d93738c1a261e82d6f7aef70cb420 11-Jul-2016 Amith Yamasani <yamasani@google.com> Include new constant for encryption status in the getter's javadoc

Added a bit more information in the javadocs about the new constant
ENCRYPTION_STATUS_ACTIVE_PER_USER in related methods/constants so
that developers don't miss checking for that constant when targeting
API Level 24.

Change-Id: Id9cd6248637fe0fc28d5161344abe02614b5f502
Fixes: 30073719
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
790d198860dc550f2dbaa5ac502cbcda1f8530c9 07-Jul-2016 Mahaver Chopra <mahaver@google.com> Add an api to verify if ro.device_owner was set

Currently for OobConfig app we used DEVICE_PROVISIONED Global setting to
verify if device was provisioned. This setting can be modified using
adb. we just need to know if it was set atleast once. Added an api in
DPM to return whether system property "ro.device_owner" was set.

Bug: 29935702
Change-Id: I9a2b5217c0bc2cc11d68282e05a5450ea3f6cf21
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6918675fa1ee00efe686b8d6dc16fe5c80ce6f23 17-Jun-2016 Robin Lee <rgl@google.com> Remove @return from void API javadoc

Fix: 29500429
Change-Id: Ieddf211ad881e2e48bf593dcde6d262dd5be6c5c
(cherry picked from commit b3d6b13ad5fffaad82da4c060ba1a064a445456a)
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b3d6b13ad5fffaad82da4c060ba1a064a445456a 17-Jun-2016 Robin Lee <rgl@google.com> Remove @return from void API javadoc

Change-Id: Ieddf211ad881e2e48bf593dcde6d262dd5be6c5c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e1b53d7caba4e6c8e0367e4d33f5dd3b816a6606 25-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add missing @Deprecated annotations."
977ade26dd8bc6a442be2db2470459058246844f 24-May-2016 Ricky Wai <rickywai@google.com> Do not allow DPM.resetPassword() when child profile exists or user is locked

Bug: 28878708
Change-Id: Iaae2a9ba9c7c0ff388264c474c78a0dcd9fec258
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
514c5ef8d5774d8820ed1bf90fe53af1606cf106 25-May-2016 Aurimas Liutikas <aurimas@google.com> Add missing @Deprecated annotations.

Add missing @Deprecated annotations for methods with @deprecated tag
in javadoc.

Change-Id: I35b78ccb97832d86b914c21a300444ba29e33844
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
93f8fd714ad89067bf81d2ce8be3b2f2e816dee2 05-May-2016 Sudheer Shanka <sudheersai@google.com> Update RestrictedLockUtils to use UM.getUserRestrictionSource.

Bug: 28269827
Change-Id: Ib4a1441b71986ca6637a9236136b60e18dbc1643
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7f06eed7f528096cd3597dafa0c2b37cb6e7f921 06-Feb-2016 Adrian Roos <roosa@google.com> DPM control for remote input when locked

Bug: 26981262
Change-Id: I84f26ebe807e89fd56ffc3bbc7fc20f12e2f7391
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0fb6b9e18c4f9fad98c426ace0190017e8b2060a 04-May-2016 Rubin Xu <rubinxu@google.com> Guard retrievePreRebootSecurityLogs with config flag

Bug: 28160645
Change-Id: Ifce884c319019758dfaaa39bc239e9f30962c920
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dc67971a996c447c71ceb9ad983c79c96f598bcc 03-May-2016 Robin Lee <rgl@google.com> Add lockdownEnabled parameter to always-on VPN API

Allows callers to opt-out of blockading network traffic during boot and
on VPN app failure.

Bug: 26694104
Change-Id: Ibfbd43ad09a25f2e38053fcd6306df3711f8bde2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
38dcca51a739d3273b24e84ba5e89e505f45960c 19-Apr-2016 Kenny Guy <kennyguy@google.com> Add test method to remove admins.

Add test method to remove admins that declare
FLAG_TEST_APP without informing them.
The method will also remove the device and profile
owner status of the admin.

Bug: 28027468
Change-Id: Idb4d3299a9c6595c94bfb424546cd8a384131835
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bc33c8290f63731e8bd73ecd6f744e2733b15bf5 15-Apr-2016 Benjamin Franz <bfranz@google.com> Revert "Revert "Throw security exception for non-parent aware APIs""

This reverts commit a26c6265641543aef24245b84064b8f58de66c29.

Bug: 27532279
Change-Id: I0c0394a8abf12e7382e7083a0b9d7f8385c3a63d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fd580f7d1a5a19b062bea49602f0f6136bce7e5e 13-Apr-2016 Sudheer Shanka <sudheersai@google.com> Merge "Update {set,get}{Long,Short}SupportMessage APIs to use CharSequence." into nyc-dev
74cd73079c6901f7e081fcac744a2597ed96a991 12-Apr-2016 Michal Karpinski <mkarpinski@google.com> API polish in DPM for organization color and name methods

- Returning and accepting CharSequence instead of String
- Enforcing 100% opacity and adjusting javadocs for color
format
- Adding @ColorInt annotations

Bug: 27531295
Change-Id: Id27d4fd5e7bb4d746cc61288457eb4eb86224505
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3ccca91e6ee2106004c3762ee682deff7343c6d4 12-Apr-2016 Sudheer Shanka <sudheersai@google.com> Update {set,get}{Long,Short}SupportMessage APIs to use CharSequence.

Bug: 27531295
Change-Id: Ib28c509a3112046c14d812265ce43bc5b5574f12
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3f7fdaaa766104cc5b8946676c9187661cb60aa7 11-Apr-2016 Benjamin Franz <bfranz@google.com> Merge "Revert "Throw security exception for non-parent aware APIs"" into nyc-dev
a26c6265641543aef24245b84064b8f58de66c29 11-Apr-2016 Benjamin Franz <bfranz@google.com> Revert "Throw security exception for non-parent aware APIs"

This reverts commit bd7ae782ed815a1765b15852caf6137ee6bae47e.

Bug: 28107853

Change-Id: Ic286d9a181e96b8eb9826dab9ed297e0e4dfa6de
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5c1fbadb1a1169186b7a0a357ae9c35183258c6c 08-Apr-2016 Benjamin Franz <bfranz@google.com> Merge "Throw security exception for non-parent aware APIs" into nyc-dev
035e92447084b96ef2c9125e77105c237e20bad3 18-Mar-2016 Ricky Wai <rickywai@google.com> Fix work profile screen timeout policy

Settings screen should apply both primary and managed maximum
timeout policy, even separate profile challenge is enabled.

Bug: 27493348
Change-Id: Ia1ec1cafc7665c54816833af64e0f446a77a55b2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bd7ae782ed815a1765b15852caf6137ee6bae47e 05-Apr-2016 Benjamin Franz <bfranz@google.com> Throw security exception for non-parent aware APIs

When the parent instance of DPM is used to call an API that is not
parent-aware, we should throw a security exception.

Bug: 27532279
Change-Id: I90abeb4c8522cb9af798301c1bb2048579596993
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a01c1f0d90def31de9bdd21bada11a3dfc0444b0 06-Apr-2016 Tony Mak <tonymak@google.com> Merge "xxxTrustAgentConfiguration should be supported in the parent DPM instance" into nyc-dev
589b855719ce89ba68ce1a93f15a4c79a2461adc 06-Apr-2016 Robin Lee <rgl@google.com> Merge "Remove bool return from setAlwaysOnVpnPackage" into nyc-dev
ee5eb934e349ee6a01a028cb431afac9018b8e56 05-Apr-2016 Robin Lee <rgl@google.com> Remove bool return from setAlwaysOnVpnPackage

Bug: 27533151
Change-Id: I4c656488e69cb5247dbb9cfd62d6f6f7043f9a90
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4a53c8e70253928bf89913cb313de47450d0782f 06-Apr-2016 Benjamin Franz <bfranz@google.com> Merge "Document which APIs are callable on the parent instance" into nyc-dev
66b45f01ff0df5d7b674105722bdcd33a1bf2233 05-Apr-2016 Benjamin Franz <bfranz@google.com> Document which APIs are callable on the parent instance

In DPM it is possible to retrieve a parent instance to set policies
that are applied to the profile parent. Extend the javadoc to clarify
which APIs are actually callable on the parent instance.

Bug: 27532279
Change-Id: I7ed40f8c3c7c3089283489bff41a04c70239d5a4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
089d840383c511ed170a284ba343bd9a00db790e 05-Apr-2016 Tony Mak <tonymak@google.com> xxxTrustAgentConfiguration should be supported in the parent DPM instance

1. Fix trust agent config does not persist across reboot
2. xxxTrustAgentConfiguration now supported in parent DPM instance

Bug: 27601827

Change-Id: I6ea4a089bf590d6c44be40318f3a69c35c54f796
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
691b1a6005ed373ad75361aa5a1bd120f138f15c 05-Apr-2016 Robin Lee <rgl@google.com> Merge "Switch to work challenge if MP calls resetPassword" into nyc-dev
ce5c4009cf555b1ece69356949f4c2c4b38cc25a 23-Mar-2016 Robin Lee <rgl@google.com> Switch to work challenge if MP calls resetPassword

If the profile owner wants to set a lock screen for a profile which they
created, we should let them. This will cancel any lock screen
unification that has been set up.

Attempting to clear the password will continue to throw
SecurityException if called from a managed profile.

Bug: 26682008
Change-Id: Ia09aef879a21c074ccb517905e43f62696837998
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fa7b6723e6fae582bc4948394b06c0f88dc1baa3 01-Apr-2016 Kenny Guy <kennyguy@google.com> Merge "Allow PO to check if it is in a managed profile." into nyc-dev
f1fe782e912d3feed9cded8fb80b179c4ee5d09c 31-Mar-2016 Robin Lee <rgl@google.com> Merge "API to approve CA certificates" into nyc-dev
2f7e1e487c8ef486a16ad2398ffee413b53da04e 21-Mar-2016 Robin Lee <rgl@google.com> API to approve CA certificates

Bug: 18224038
Change-Id: Id928872cd70dac5a5ecfdcd52150fe6dea544e3b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ffa3840cf32cc3d02fc8d7a0f7b445dd9015b1a6 31-Mar-2016 Kenny Guy <kennyguy@google.com> Allow PO to check if it is in a managed profile.

Method was @hide because we only intended to add
managed users in a later release, however we added
createAndManageUser which allows it.

Bug: 27261765
Change-Id: I029f8ef35a3065f7fc598b5f854c8d8cdc9c555d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aa604694450539b4c99901b0714efaa79db3c87d 31-Mar-2016 Andrei Stingaceanu <stg@google.com> Merge "AfW - suspend apps - API polish" into nyc-dev
31f59f1106824594ab8d5d48391b785b8687c4b0 31-Mar-2016 Michal Karpinski <mkarpinski@google.com> Merge "Adjusting javadocs for process logging" into nyc-dev
d2a968f9c31ba1864bc514bb88a9a939508fe794 31-Mar-2016 Sudheer Shanka <sudheersai@google.com> Merge "Return null value if getActiveAdminUncheckedLocked returns null." into nyc-dev
549b9692808cbd7d64e732b199b453b2b372dd32 31-Mar-2016 Sudheer Shanka <sudheersai@google.com> Return null value if getActiveAdminUncheckedLocked returns null.

- Split per user version of getUserRestrictions into a separate method
in DPMS and make the per-user version return null if the admin
parameter is not a valid one.
- Update isAccessibilityServicePermittedByAdmin and
isInputMethodPermittedByAdmin to return false if the admin parameter
is not a valid one.

Bug: 27909087
Change-Id: I6f4cae6552cbfe02dc4a92b04eeeddf0314e0974
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5b7ca24f14ae4d1189ca7683fdad1ec0e62b88b8 30-Mar-2016 Rubin Xu <rubinxu@google.com> Merge "Add DevicePolicyManager API to install a client cert chain." into nyc-dev
30fb0534492478a3f95f6953b31bbb666ced8fe5 30-Mar-2016 Clara Bayarri <clarabayarri@google.com> Merge "Change default work challenge background color" into nyc-dev
8d0bd7fa634c090514ff27bbc0cd25a609c22b83 30-Mar-2016 Clara Bayarri <clarabayarri@google.com> Change default work challenge background color

Requested by UX

Bug: 27829562
Change-Id: I815c06784189e68b09e464e936521e82091c93c3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e0e1009820f114d1f179c8d167d679788087be46 30-Mar-2016 Michal Karpinski <mkarpinski@google.com> Adjusting javadocs for process logging

Informing the pre-reboot logs may be empty and specifying that base APK hash is logged.

Bug: 27896341
Change-Id: I9011f6f6ebd0e20e5a4be86f6c5d33094212cc3d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b43659170824dd8d753d9249fe6ccfd37c6221ae 23-Mar-2016 Rubin Xu <rubinxu@google.com> Add DevicePolicyManager API to install a client cert chain.

When installing a keypair the caller will have the option to specify a
certificate chain which will later be returned to whoever requests access
to the keypair via KeyChain.

Bug: 18239590
Change-Id: Id21ef026e31537db38d891cb9b712dd4fe7159c7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
efc4a344a173ae20ec72b8c05c45b794687fda87 22-Mar-2016 Andrei Stingaceanu <stg@google.com> AfW - suspend apps - API polish

* renamed getPackageSuspended => isPackageSuspended
* does not return false for an error, instead throws
NameNotFoundException if the package could not be
found, or if there is an unknown RemoteException,
wraps it in a RuntimeException and rethrows.

Bug: 27532430
Bug: 22776761
Change-Id: Iee00600089b1c0556a3312b10456826464fa8f9f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
16187903b40014e28b97e2bd1429543e2c27ffb9 21-Mar-2016 Andrei Stingaceanu <stg@google.com> AfW custom lock screen message - API polish

DevicePolicyManager:
* getDeviceOwnerLockScreenInfo now returns CharSequence as it returns a string
for display to a user
* setDeviceOwnerLockScreenInfo
** accepts CharSequence, not String as this is a string displayed to the user
** Returns void; throws an appropriate runtime exception on failure

Bug: 27531295
Change-Id: I30528569cfa66ee76f857fbee1c3196f821718fd
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3bce4bfa04898308891ebe0948785226a6602f91 23-Mar-2016 Michal Karpinski <mkarpinski@google.com> Remove legacy DeviceLogging methods from DPM

Those methods were replaced with SecurityLogging ones.

Bug: 27532425
Change-Id: I6952251d9c15f932517e7cb39a7056f35c3a194f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ea956242903f73bb42dd134923725e8ccd74f706 21-Mar-2016 Benjamin Franz <bfranz@google.com> Clean up some javadoc issues

Bug: 27672974
Bug: 25881314
Change-Id: Ida53e3bf23b2492c26f4a82878fa192110a8794f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cd14c0a9daa42a7ccacef345b3b2ef255790f993 16-Mar-2016 Victor Chang <vichang@google.com> Api change of DPM.setApplicationRestrictionsManagingPackage()

Throws NameNotFoundException instead of IllegalArgumentException

Can't throw NameNotFoundException directly from DPMS as
aidl doesn't support checked exception

Bug: 27532565
Change-Id: I202721f41057f92ad2dd851d4769ba4502a8f9b3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c7605b838bda61593e503924c6c86e3a33a6d64b 17-Mar-2016 Rubin Xu <rubinxu@google.com> Merge "Unifying method names and comments to security logging, not device logging" into nyc-dev
6235a94ffaed1d82cee2317481c18776f601da1b 15-Mar-2016 Michal Karpinski <mkarpinski@google.com> Unifying method names and comments to security logging, not device logging

Also move SecurityLog to android.app.admin package.

Bug: 27531824
Bug: 27532560
Bug: 27532564
Bug: 27532425
Change-Id: I2677afdb5685bc5d21e52c41b381b57a41e364b6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5fbfa1b0d203296d624f9c2317c309c0e02b468e 16-Mar-2016 Esteban Talavera <etalavera@google.com> Merge "Clarified documentation as requested by API review" into nyc-dev
c25c9032ffdca20a4080db5a1fe1e771af9256f6 16-Mar-2016 Nicolas Prévot <nprevot@google.com> Merge "Update documentation of DevicePolicyManager.isProvisioningAllowed." into nyc-dev
96895cae3e6cb083ecbaffb6d0d88abc8de14852 16-Mar-2016 Esteban Talavera <etalavera@google.com> Clarified documentation as requested by API review

Bug: 27532433
Change-Id: I5fada6c0a4636528393308d5ce098cd0398e5ff5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
34d92ef6310344b0710875619c533d8b81e13627 14-Mar-2016 Suprabh Shukla <suprabh@google.com> Updating javadoc for DPM apis

Added @throws tag in the javadoc for many APIs which might throw a
SecurityException in cases when such information might be useful for the
caller. E.g. when the caller has to be a device owner or must request
certain policies before making the API call.

Bug: b/27532288
Change-Id: I18e1a49a5e86a0322c035996ed7e9c3217da78c8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1216ae5d023e8f6e4f158a447a5764288e4ccc3e 11-Mar-2016 Mahaver Chopra <mahaver@google.com> Update DPM.reboot with new restriction

DPM.reboot() should not be called when there is an ongoing call on the
device.

Bug:27531799
Change-Id: Idc1fa4c7aa79b20ec9c2afcccf855455ee316787
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
797fca5fd9478b89547bb36ec1b8260035de264b 15-Mar-2016 Nicolas Prevot <nprevot@google.com> Update documentation of DevicePolicyManager.isProvisioningAllowed.

Do not mention the possibility of races for consistency with
other methods.

BUG:27532561
Change-Id: If81e8478742458456d1f2a23c61dded3e3a4f876
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d4c9e541ec7110d3c842d6f92c3ec6beb0b6d997 26-Feb-2016 Makoto Onuki <omakoto@google.com> Add ENCRYPTION_STATUS_ACTIVE_PER_USER to...

getStorageEncryptionStatus()
Use StorageManager APIs to get the encryption
state instead of from the system properties
directly.

Bug 26547262

Change-Id: Ic27baa9489d43a93873f8bb0428084f8886aed67
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ab750d283aca3dcfa8178589ca64e8be819f848b 10-Mar-2016 Kenny Guy <kennyguy@google.com> Merge "Update docs to make suspend then uninstall clear." into nyc-dev
871f3ebb56b5c9219ff3f9cf7bab98038a7b7a5a 09-Mar-2016 Kenny Guy <kennyguy@google.com> Update docs to make suspend then uninstall clear.

Update docs to say suspending then unintalling an
app unsuspends the app. Point out admin can block
uninstall if they want.

Bug: 26935242
Change-Id: I4390fa20c9d8954b36ff80fc449b62891eee598c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9acee934de1f2242f29a57a854df837e8f38fa04 09-Mar-2016 Robin Lee <rgl@google.com> Merge "Corrections to javadoc for install & removeKeyPair" into nyc-dev
a1b290e11a1f012a4fc53510d10c301c93b121d5 09-Mar-2016 Robin Lee <rgl@google.com> Corrections to javadoc for install & removeKeyPair

Making these more consistent - refer to 'certificate and private key
pair' in titles instead of 'credentials'. It is still used in one place
where 'credentials' makes sense.

Bug: 27533004
Change-Id: Ied80017c6f391646b10921b011be35eea113373f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
97e89c624e19c0a0ebe3d76506a493cfe29c0558 08-Mar-2016 Sudheer Shanka <sudheersai@google.com> Merge "Update DPM.getWifiMacAddress to take admin component as argument." into nyc-dev
3cb4da16dcf07474acefb709d10b22cdfdefd81b 08-Mar-2016 Sudheer Shanka <sudheersai@google.com> Update DPM.getWifiMacAddress to take admin component as argument.

Bug: 27532280
Change-Id: I3a5e9557c3c6ac43c458c911a5309bdb2655fb66
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ba24409033241e680d111e7dea6501e760d972c5 25-Feb-2016 Michal Karpinski <mkarpinski@google.com> Rework of remote bugreports UX

New notifications, that open dialogs.

Bug: 26226230
Change-Id: I50f9ab23b6c6d03892889d9081cabb0a3d858f91
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e4872f2a52b1929b25e982e7cd050b0f95d73cc1 02-Mar-2016 Robin Lee <rgl@google.com> Merge "DevicePolicyManager#removeKeyPair- update contract" into nyc-dev
8f617d40ab28257914fc4dd5cf64dbba972ba855 02-Mar-2016 Robin Lee <rgl@google.com> DevicePolicyManager#removeKeyPair- update contract

May also return true if the keypair didn't exist in the first place
which is a small reduction in the amount of information leakage, but
more importantly lets a caller be sure about keystore state at the end
of their call.

Bug: 27335182
Change-Id: I5e6d4c599b74f031e3f6d17cb7540898ffaf2571
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dbff9ca4a52d55297330efaeddfa48f0908514ca 02-Mar-2016 Jeff Sharkey <jsharkey@android.com> When system server goes down, crash admins.

Apps making calls into the system server may end up persisting
internal state or making security decisions based on the perceived
success or failure of a call, or the default values returned.

The reality is that if the system process just died, init will be
along shortly to kill all running apps, so we should have no problem
rethrowing the RemoteException as a RuntimeException.

Bug: 27364859
Change-Id: I866a8c3c9682da1de2a31fe8b4ffcc9d7f4d8ba0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b58e4966db1c9bd3d0567ef613e8cb8f80e8e85e 01-Mar-2016 Michal Karpinski <mkarpinski@google.com> Adding SecurityException information to all device logging DPM public methods

Bug: 22860162
Change-Id: I6cdfad2dcdf14896c855debef34964def190e110
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a4fae1545ae38f61385e45e8f635994f447efca5 24-Feb-2016 Makoto Onuki <omakoto@google.com> Merge "Support safe mode properly." into nyc-dev
889c0880661bda16e3759995e03766ddf0350732 17-Feb-2016 Makoto Onuki <omakoto@google.com> Support safe mode properly.

In safe mode, IPM.queryXxx() doesn't work. Use IPM.getReceiverInfo()
directly instead.

Bug 27108276

Change-Id: Ice8f882559b8f0596a19ddb3a16395a4dc538a25
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
155a280e18200aeaa0e7d5e31d6b8b0115c58e42 24-Feb-2016 Robin Lee <rgl@google.com> Merge "DPM: installKeyPair variant: caller can self-grant" into nyc-dev
ce3399fbb46972d223b0cd154eaea3b68a16e051 24-Feb-2016 Robin Lee <rgl@google.com> DPM: installKeyPair variant: caller can self-grant

If 'requestAccess' is true, the caller (either profile/device owner or a
designated certificate installer) will be granted usage of the keypair
on successful installation.

This has no security implications for a profile/device owner which would
already be able to self-grant. Delegated certificate installers did not
have this ability before.

This is only allowed at install-time- not afterward.

Bug: 24746231
Change-Id: Ia0ec290bb0bcde1d8137c188e2667cb7718dbfd7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f398479e069c7accb1f96b06b32e086609342669 23-Feb-2016 Philipp Weiß <phweiss@google.com> Merge "Remove deprecated APIs DPM.createUser, createAndInitializeUser" into nyc-dev
72283fdb61df5c057d105644f0ae35ae9ae248b5 23-Feb-2016 Benjamin Franz <bfranz@google.com> Merge "Make user provisioning state SystemApi" into nyc-dev
eed2a8e165c97f766b4ee5f7a45def9c4749880d 19-Feb-2016 Benjamin Franz <bfranz@google.com> Make user provisioning state SystemApi

These APIs are used by the SUW. To go with the convention that all SUW
APIs should be SystemApi, adding it to these ones.

Bug: 25858670
Change-Id: Icffc9cdc13fa87da3543d92308f87dd0c9764c81
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d34718b6b95086c34b4813525e6000064460e3a1 22-Feb-2016 Esteban Talavera <etalavera@google.com> Merge "Updated removeActiveAdmin documentation" into nyc-dev
27ee33482a2fdecbbbedbd33a137ceae3e93fa2a 08-Feb-2016 phweiss <phweiss@google.com> Remove deprecated APIs DPM.createUser, createAndInitializeUser

They were deprecated in M and slated for removal in N.

Bug: 26974903
Change-Id: I7ae4d60bcf226c1e1de42852b378ad1ff71a914b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
552a561b5c73398a3159e569eb1e9b57793932e2 19-Feb-2016 Esteban Talavera <etalavera@google.com> Updated removeActiveAdmin documentation

Bug: 13176294
Change-Id: I0554c2c9a1f4aaa4283474ab7810678004985a2f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
44da29407f3228811d5c1387a184fc68c388c5c7 19-Feb-2016 Esteban Talavera <etalavera@google.com> Merge "Update DevicePolicyManager parent instance documentation" into nyc-dev
c1c8359072bed25b9bd30bf5abaced202e7eeb88 17-Feb-2016 Esteban Talavera <etalavera@google.com> Update DevicePolicyManager parent instance documentation

Update documentation for the DevicePolicyManager regarding APIs
that can be called on the DPM's parent instance.

Bug: 26903406
Bug: 27065927
Change-Id: I45cb8de0ab9ad26812ba502820264b68c36c88fd
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0137c3daf4bdd3154b71d9b34536960c424fc422 17-Feb-2016 Amith Yamasani <yamasani@google.com> Merge "Clean up App Standby code" into nyc-dev
ca5d6d2a814fbe4bceffa01b8c18ac05f70fbba0 16-Feb-2016 Amith Yamasani <yamasani@google.com> Clean up App Standby code

Don't continue to check idle states for removed / stopped users.
No need to check for uninstalled packages for all users.

Bug: 27208519
Change-Id: I9a3a3bbec560dd380ce90df9fef102d7f62769ca
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
eb84b1843a3f6805c6109c1d9d023550229a3fc5 26-Jan-2016 Andrei Stingaceanu <stg@google.com> Suspend packages - one call for multiple packages

Refactor setPackageSuspended into setPackagesSuspended. The rationale
is that the consumers of this API are likely to want to remove
multiple packages at once. Rather than calling the API N times, call
it just once.

The good part is that we already have the broadcast intent for
suspended packages take an array so only one broadcast. Less stress
on the system.

Another good part is that (right now) we only have one consumer of
this API and it will be easy to make changes once this CL goes in.

As a shell command, for consistency only allowed one package at
a time.

Bug: 22776761
Change-Id: Ic8b8cf64d0a288ea3a282bb7b72f9d663b3b0049
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5ae4e73ef0747c2d08a901f1a76d8fb8ee64a53a 17-Feb-2016 Andrei Stingaceanu <stg@google.com> Merge "Suspend packages - new API for retrieving the suspended status" into nyc-dev
355b232d7998cfc9b29d42a0356390e25191bcbd 12-Feb-2016 Andrei Stingaceanu <stg@google.com> Suspend packages - new API for retrieving the suspended status

Instead of always rebuilding the full ApplicationInfo for a
package when callers are only interested in the suspended status
add a new fast API in Packagemanager (which only checks the
suspended user setting for the requested package and returns
a boolean) and change the appropriate caller code too.

Bug: 26794775
Bug: 22776761
Change-Id: Ide8428ef734479360d5a8a75fd8e0ed8ddf2da7a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
eff90bd5ff6bd50325149a5010183277bd76f4c6 15-Feb-2016 Nicolas Prévot <nprevot@google.com> Merge "Allow privileged apps to set the organization color." into nyc-dev
29b13190cd57bd823eb803f6fca03f671a32a5fe 12-Feb-2016 Clara Bayarri <clarabayarri@google.com> Merge "Add support for current failed lock attempts and max attempts" into nyc-dev
51e41ad887a2e30a1366f0a3b4750f0204912b8e 11-Feb-2016 Clara Bayarri <clarabayarri@google.com> Add support for current failed lock attempts and max attempts

This is needed from Settings to show a message informing the user
of the number of attempts before their work profile gets wiped
when using ConfirmDeviceCredentials.

Bug: 26677759
Change-Id: I4b16f7dc2f415d0ce0215a3b7a646f98fabece33
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8f7698aaf630787693ec7edb4779a27fdd2b888b 11-Feb-2016 Nicolas Prevot <nprevot@google.com> Allow privileged apps to set the organization color.

BUG:26923835
Change-Id: I97b0cbbc0d4fb9e9ca0e3d335a9d15eb5a1f9602
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ed5c8f0216bf97e896936e2a2e24fc3fb18303a1 09-Feb-2016 Michal Karpinski <mkarpinski@google.com> Log strength of auth method used into security log

As approved by Android Security team, added logging of
strength of auth method as well as logging of fingerprint
keyguard actions.

Bug: 26841997
Change-Id: Ic8e3f125f775a7585fe56003f4c6442390edea61
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
338c1d860772edc3101ed4860a149e7f3c5fe493 10-Feb-2016 Suprabh Shukla <suprabh@google.com> Merge "Added an api to uninstall a packge with active DAs" into nyc-dev
a2ae2238e506d5b092015440792d5a885b7a7b1d 29-Jan-2016 Suprabh Shukla <suprabh@google.com> Added an api to uninstall a packge with active DAs

The api deactivates all the active admins in the package, then force
stops the package and starts the uninstall intent for the package. This
is intended to provide an easy way for a user to delete a misbehaving
Device Admin

Bug: b/22359208
cherrypick of Ic7ddd89ef6db53e7e76f805808d9e806100374db

Change-Id: I0d677839120c46f22231a7d6f9cf6630cb020227
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f03d0a6bfcff0f36a623b4fad7bd505d94b22e9a 10-Feb-2016 Rubin Xu <rubinxu@google.com> Require delegated cert installer and app restriction manager to exist

Enforce that apps with delegated powers to exist on device before
empowering them. This is consistent with DevicePolicyManagerService's
internal logic to clear the delegation power once the package is removed.
For delegated cert installer, only enforce this new restriction on
device admins targeting N or later.

Bug: 26233778
Change-Id: Ia8f45dfd5290958cebb36991c4b6baa03e8c28ae
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
57218cbbf773f389e5e9493623dd3d017e459590 04-Feb-2016 Sudheer Shanka <sudheersai@google.com> Merge "Made changes to fix some policy transparency options."
ee081d5bd0fdbe7224382da7ce388b9d21f21c78 04-Feb-2016 Steven Ng <stevenckng@google.com> Merge "Add new permission and action for managed provisioning (QR flow)"
569258689a0d28f25cbdf7189038833d45a63a80 28-Jan-2016 Sudheer Shanka <sudheersai@google.com> Made changes to fix some policy transparency options.

Add isInputMethodPermittedByAdmin and
isAccessibilityServicePermittedByAdmin APIs in DevicePolicyManager.
And update utility methods in RestrictedLockUtils to use the correct
userId when checking if disabled by admin.

Bug: 26897250
Bug: 26767564
Bug: 26966213
Change-Id: I0b74b3e57904a82f8ce72d856769d35b5e8403e5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
90b896533eb6a8867e7951bbbdbbacd9b520199c 28-Jan-2016 Makoto Onuki <omakoto@google.com> DO / PO Shouldn't be removed as active admin...

even if they asked.

Also clear(Device|Profile)Owner should remove them as the active admin
too.

Also add some more unit tests.

Bug 26858840

Change-Id: I7b3ed92e1b4cbe803381ed6e3f64d8de17b2ebb0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
980a1b6fa872f82133a7421bcfe14e2b03a0745e 02-Feb-2016 Steven Ng <stevenckng@google.com> Add new permission and action for managed provisioning (QR flow)

+ Instead of reusing NFC provisioning action, new action and permission
are introduced for QR code provisioning

Bug: 26240297
Change-Id: Id2632d6c6b9e62bf3cad5bc141430d49df4a2c5d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c3cd05f8a45ab789aae1cb553df86f94667d595a 11-Jan-2016 Rubin Xu <rubinxu@google.com> Add DevicePolicyManager APIs for process logging.

Add Device Owner APIs for controlling and retrieving the logs. Retrieving the
logs should be rate limited unless we are at the risk of losing logs due to
constrained buffer space.

Bug: 22860162
Change-Id: I80658f5a14e86d7cfd42402fbc5e98dc11698c0e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3e8a7090642d58dcd435121650a243dca262c96a 25-Jan-2016 Benjamin Franz <bfranz@google.com> Add policy to set the organization name

We allow the profile owner of a managed profile to set the name of the
managed organization.

This name is used as the default header message shown in the confirm
credentials screen a.k.a. work challenge.

Bug: 26638631
Change-Id: I03c5acc9fffe06cdb9d0d60dd1580b20e21783b1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
978fc0d44c5e95255fa2c263ef67b6fd1c972d25 28-Jan-2016 Sudheer Shanka <sudheersai@google.com> Add a DPM method to allow system to query parent profile instance.

Bug: 26830384
Change-Id: Ib12b171b1032bd86488f32f8d22eb0a9efb75e8f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bc0ce990435fe02a356b3e43272f692709f633ed 28-Jan-2016 Michal Karpinski <mkarpinski@google.com> Merge "Logging of keyguard actions into security log"
31502d3d95610930b56bb7931dbd57a997f9ce8f 25-Jan-2016 Michal Karpinski <mkarpinski@google.com> Logging of keyguard actions into security log

Bug: 22860162
Change-Id: I7dbe68fff7d9d45b6c417d960cf025c8d0694917
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1244ece2e345aea5a64c15c87b107c01dca3f9c9 27-Jan-2016 Makoto Onuki <omakoto@google.com> Merge "Make DPM.clearProfileOwner() public."
5bf68027cf502c2835ad258aec05544958fcd354 27-Jan-2016 Makoto Onuki <omakoto@google.com> Make DPM.clearProfileOwner() public.

Bug 26827204

Change-Id: Ib32e5370b493aa3e36b869d9ed3d78782df4c895
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f348e8e22bed4b56fdb0c02702d12b36467dedd7 07-Jan-2016 Lenka Trochtova <ltrochtova@google.com> Add policy for enforcing that all users are ephemeral.

BUG: 24883058

Change-Id: I8e53ca677c935a6c828dd6ece00b345d0eff182a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a269c5d584a572d91a0640bb8f8f58885ff9d71b 27-Jan-2016 Lenka Trochtova <ltrochtova@google.com> Merge "Add a flag for creating an ephemeral user with DevicePolicyManager#createAndManageUser."
c8202c8d1d7c9bc2ee44cec538dc7fa4f95f960f 26-Jan-2016 Lenka Trochtova <ltrochtova@google.com> Add a flag for creating an ephemeral user with
DevicePolicyManager#createAndManageUser.

BUG: 24883058

Change-Id: I225ee6f1f6692663349040676e7a6c742b3ede79
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d7693917a7c7348cb12692116d2693314c29e809 22-Jan-2016 Clara Bayarri <clarabayarri@google.com> Check if the profile password would comply as the device lock

Bug: 26801330
Change-Id: Ide31464dd0292ca97b03abe08cdde5b41d517b66
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
697815eddb0139e6d4284b72f9393cf46c6e544b 26-Jan-2016 Victor Chang <vichang@google.com> Merge "Launch managed quick contacts without contact id"
44a18081546345a0655748717862a89ae6dd7948 26-Jan-2016 Alan Treadway <alantreadway@google.com> Merge "Add explicit and persistent user provisioning state."
a92e1216ca3af5d03e17734b6b990be5116d07a9 25-Jan-2016 phweiss <phweiss@google.com> Make API createAndManageUser public

Remove @hide, and add parameter for specifying profile owner. The PO
has to live in the same package as the device owner.

Bug: 25288732
Bug: 25860170
Change-Id: I40e8984a71ee9d1ff74e57d4e79e298deef9bc35
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
97bdacc6d124f08a3f1c362fc35a5eed16af9880 21-Jan-2016 Victor Chang <vichang@google.com> Launch managed quick contacts without contact id

set contact id to enterprise base contact id if it's enterprise uri

BUG=26176780

Change-Id: Ie1160bef22d44c90eb4015783fafdafd160bcdd8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5f09616e6bb793e789167e3281478b13413d0932 25-Jan-2016 Philipp Weiß <phweiss@google.com> Merge "Add new API function createAndManageUser"
afad8783699b1ba6f3c7ee5961d6ddc2bd771dc1 19-Jan-2016 Alan Treadway <alantreadway@google.com> Add explicit and persistent user provisioning state.

Add explicit modelling of provisioning state so that integration
of management provisioning flows with packages such as setup-wizard
are cleaner, and can be more direct. Previously we relied upon
USER_SETUP_COMPLETE secure setting and HOME intents to signal intent,
but this is not very clear and can be fragile.

Bug: 25858670
Change-Id: Idc56a040f710c3aee281db420f21717da3960722
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
343fb33a9be819bbf33eae2c3f93bc44b3477ecd 25-Jan-2016 phweiss <phweiss@google.com> Add new API function createAndManageUser

This is a reduced version of the (deprecated) function
createAndInitializeUser, that allows the device owner to create a
new user and pass a bundle with information for initialization. The
new version of the function has the same functionality, but the
profile owner of the new user is always the device owner.

A flag can be specified to skip the setup wizard for the new user.

The new user is not started in the background, as opposed to how
createAndInitializeUser did it. Instead, the bundle with
initialization information is stored and will be broadcast when the
user is started for the first time.

Bug: 25288732, 25860170
Change-Id: I4e1aea6d2b7821b412c131e88454dff5934192aa
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fe434a15d6bde9299b51dc284b336944e5cf8a1c 25-Jan-2016 Esteban Talavera <etalavera@google.com> Merge "Add additional APIs supported work on the parent DPM instance"
4c052f237a108457fca3d3864c5654ebd4505111 25-Jan-2016 Bartosz Fabianowski <bartfab@google.com> Implement user affiliation

A user/profile is considered affiliated if it is managed by the same
entity as the device. This is determined by having the device owner and
profile owners specify a set of opaque affiliation ids each. If the sets
intersect, they must have come from the same source, which means that the
device owner and profile owner are controlled by the same entity.

BUG=25599229

Change-Id: I393fe0de70272307ed3c811aaba4b48a5109c562
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
623999185029a2c5baf29efe4ebdcbcdebcca294 11-Jan-2016 Esteban Talavera <etalavera@google.com> Add additional APIs supported work on the parent DPM instance

Bug: 22543972
Change-Id: I05061e34d120c64d5c49ca6b7b4014d7dadb68f4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
947f3557a5917617a6a738e3e2c4a2f055601270 22-Jan-2016 Benjamin Franz <bfranz@google.com> Merge "Add profile policy to set work challenge background color"
59720bb2a67dae70cd2e46a9f611d66e4a3f7221 18-Jan-2016 Benjamin Franz <bfranz@google.com> Add profile policy to set work challenge background color

Adding a policy for profile owners to set the background color of the
confirm credential screen for the managed profile.

Bug: 26638631

Change-Id: Iea36b94c5a42b6ae12cc36921ec5f840306e81a1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e5fea6fad16b68399681c1c512043f8a70d434f0 21-Jan-2016 Makoto Onuki <omakoto@google.com> Merge "SUW shouldn't use hidden APIs."
0fdcd3df83b4af1e6cd89246b5f38401d8062148 13-Jan-2016 Oleksandr Peletskyi <peletskyi@google.com> Added new password quality constant PASSWORD_QUALITY_MANAGED to make it possible
to prevent user from unlock modification.
BUG: 25549437

Change-Id: Iae9adccbb8f9e1db8a21d596137f69f6cad54988
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a2b274bd03b4abc2590f0e317b06be449f70cc06 19-Jan-2016 Makoto Onuki <omakoto@google.com> SUW shouldn't use hidden APIs.

Make getDeviceOwnerNameOnAnyUser() a system API.

Bug 26142341

Change-Id: I481b26f45c35215b9221d96b66833af47fcf5cf0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1a538d0d3cbbccce69ce31684998604b62ada24f 18-Jan-2016 Alan Treadway <alantreadway@google.com> Fix documentation for hidden intent.

Change-Id: If3325f75cff759260e42e5b3782c267cb7c1f001
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a8c8851caa0d1d44eccfcae2e01a2b6e7235d290 18-Jan-2016 Michal Karpinski <mkarpinski@google.com> Merge "DPM changes to support remote bugreports"
c992109885e37e9dfa637cdd6a54db58050488eb 08-Jan-2016 Benjamin Franz <bfranz@google.com> Introduce new intent action to set parent challenge

Introduce a new intent action that triggers setting of the challenge of
the parent user. The existing intent action is repurposed to always
trigger setting the challenge of the calling user.

Change-Id: Ia7afe268b2de95537bed5bbb57163fd23bb55b6a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b68d2d5b68dc58fb7b75ce94af74de58a1b9d3f9 14-Jan-2016 Robin Lee <rgl@google.com> Merge "Always-on app VPNs"
3fc437e89b018f258a3dee1a83014555aa156dc4 15-Dec-2015 Michal Karpinski <mkarpinski@google.com> DPM changes to support remote bugreports

Bug: 22860136
Change-Id: If984318e421f511d9b0fc7138aacd36d5334698f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fd53d56e3845f8f6ab950e2bf45a38711c6c1887 13-Jan-2016 Alan Treadway <alantreadway@google.com> Merge "Add extra to control USER_SETUP_COMPLETE behavior."
94de8c890c14c1df1eaeca658686e7241a741bd0 11-Jan-2016 Alan Treadway <alantreadway@google.com> Add extra to control USER_SETUP_COMPLETE behavior.

For split-user cases it has been identified that provisioning
a profile-owner during user setup-wizard shouldn't cause
the setup-wizard to exit early generally. Adding this extra
allows a DPC to control whether the user can take further steps
in the setup-wizard after management provisioning completes.

Adding as a hidden extra since we don't expect this to be useful
until after N release.

Bug: 25858670
Change-Id: I599a5df4aef659769a6323402efe078d0d12d2ed
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a1771110d67fa7361f92d92f2e91019882ce3305 18-Dec-2015 Clara Bayarri <clarabayarri@google.com> Create Work Challenge per-user condition

Change the current static condition to a per-user condition so we
can check and enable/disable the work challenge properly. Also add
an isAllowed API, as the Work Challenge can only be used when the
user's DPC targets N or above to maintain backwards compatibility.

Change-Id: I0cb8b475838816801868ffb24726407aa257b4de
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
244ce8ef5f201cf403bab43df8281671a9e94512 05-Jan-2016 Robin Lee <rgl@google.com> Always-on app VPNs

Bug: 22547950
Change-Id: I46b204170bfac58d944f39b22f815b080de71a58
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c754dffe1980cb6c3be96fb258b046dfcdf82353 12-Jan-2016 Victor Chang <vichang@google.com> Merge "Create a new device policy for controlling work contacts search"
1060c61866d57bd82cc474447205471c15e0d901 04-Jan-2016 Victor Chang <vichang@google.com> Create a new device policy for controlling work contacts search

BUG=25981902

Change-Id: I5cea59d7d09bf54051ae0e56e824e4d3a08a49e7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cc5061f73e8acde4e91b34187f41bdd131cf85ec 07-Jan-2016 Andrei Stingaceanu <stg@google.com> Lock screen customization message: documentation note

Specify in the javadocs the behavior when the message is formed
from whitespaces only. It is not obvious.

Bug: 26313904
Change-Id: I51d5722f090a0780a65f20395bee4fc40f9eb446
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3e826effedc89e326114a7abcbdd4ac7b3e125c0 14-Dec-2015 Clara Bayarri <clarabayarri@google.com> Create parent APIs in DevicePolicyManager

This change creates the infrastructure for a parent
DPM and implements the actual parent APIs for
- set/getPasswordQuality
- isActivePasswordSufficient

This is part of the Separate Work Challenge

Change-Id: I0477051b3162cbb26aac79467da08932f22fd1b7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
06de4e77c20be239384262b1508f0cf53bedb145 22-Dec-2015 Kenny Guy <kennyguy@google.com> Add support message for device admins

Allow admins to set a long and short support
message for settings to display.

Bug: 25659579
Change-Id: Ib645490785642e49c69d8dbc65455eb3398547ee
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b6c0ce4ac915cd5ab9a308cb0a4861c4e2cd7dfb 05-Nov-2015 Benjamin Franz <bfranz@google.com> Allow device and profile owner to modify accounts

The user restriction DISALLOW_MODIFY_ACCOUNTS and the policy
DPM.setAccountManagementDisabled can now be circumvented by a device
or profile owner. This allows the device or profile owner to add
accounts without briefly having to remove the policy.

Bug: 22030831
Change-Id: I2b59c4b3ad354287d7a00f21b2afef072d12517d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f3378a29e9c270f1cbfebb126de6f14355ccba08 17-Dec-2015 Esteban Talavera <etalavera@google.com> Merge "Device or profile owner can let another app manage app restrictions"
699d537d1b7410268c639653e66746398101ff81 17-Dec-2015 Mahaver Chopra <mahaver@google.com> Merge "Adding DPM.reboot"
bf60f728cc7ed326fb8978afd9f589a685bb87b7 10-Dec-2015 Esteban Talavera <etalavera@google.com> Device or profile owner can let another app manage app restrictions

The device or profile owner can allow another
package to set app restrictions for any app in that user

Similar to the way it can give permission to access
CA certificate related APIs from M.

Bug: 22541936
Change-Id: I0c1b0804ad300dfa4fbdc1c7721c5d8653d77861
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1e2839188fb49575b86646d3aadb355c81ef9cc5 26-Nov-2015 Andrei Stingaceanu <stg@google.com> Wire call to suspend a package

Adds APIs in DevicePolicyManager and PackageManager for allowing
a device admin to suspend a package. PackageManagerService sets
or unsets a new PackageUserState 'suspended' setting. Terminal
command to suspend/unsuspend has been added via
PackageManagerShellCommand (as root).

Next steps:
* use the new 'suspended' setting for denying access to start app
(probably in ActivityStackSupervisor)
* broadcast a PACKAGE_(UN)SUSPENDED intent for launchers to pick up
* remove app from recents (go further and kill it if it is running)
* erase existing notifications for this app

Bug: 22776576
Change-Id: I718b3498f6a53cc0c6fdfb6d15031e53ddca4353
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1ce53bc571563d8bf448a81a38da342ed5413ee4 14-Dec-2015 Mahaver Chopra <mahaver@google.com> Adding DPM.reboot

Adding new policy in DPM to trigger reboot on the device.
Requirement: Device owner can reboot the device if it is stuck or is
not useable due to some unresponsive UI.

Bug: 25304994
Change-Id: I7a6d5c8ad611de9c1cf6619378e492a306b41626
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
32b3057e8a2142bea0292f36245d639cb31b5cd7 11-Dec-2015 Makoto Onuki <omakoto@google.com> Avoid using the term "current" to mean "calling"

Bug 25715749

Change-Id: I98b28f1990d976c46b0eca2a2c15b7edbdda64ea
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
55c46f291dda5012e7ed0548653d7b8ca7a424e2 25-Nov-2015 Makoto Onuki <omakoto@google.com> Clean up DPM/DPMS to reduce code size.

Change-Id: Id6c1666ef4cdba795e3b6e4ddcb9c32e6ee90665
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fbc65644b9bda216699f5f1f883d6dfa2668e545 03-Aug-2015 Robin Lee <rgl@google.com> DevicePolicy API to remove an installed KeyPair

The keypair is specified by alias and removed via a call to the
KeyChainService, which will have installed the pair in the first place.

Bug: 22541933
Change-Id: I37317e7c22e89816156e6e9a7abf4c5a59e8440a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a31ebbc439364a4993e79fd385cf6373408a42fe 24-Nov-2015 Makoto Onuki <omakoto@google.com> Add DO API to get wifi mac address

Bug 25496044

Change-Id: Ib1f0ce4ca10951edcfaa0aa79ae5c2d142a74599
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c8a5a555f1482d0f45b538eb898d6ee7e26552a6 19-Nov-2015 Makoto Onuki <omakoto@google.com> DPM.isDeviceOwnerApp() and getDeviceOwner() now check calling user

- Previously on MNC, they would return the same result regardless who
the calling user is.

- Now they properly take DO user-id into account. Meaning, they'll
always return false and null respectively, if the calling user doesn't
run device owner.

- Note isDeviceOwnerApp() is a public API and getDeviceOwner() is
a system API. Meaning we're changing the behavior or non-private
APIs.

- Also cleaned up hidden APIs, and gave them explicit suffixes
to avoid confusion. Bundled code should prefer them for clarity.

Now we have:

* APIs that work cross-users: They all require MANAGE_USERS.
boolean isDeviceOwnerAppOnAnyUser(String packageName)
ComponentName getDeviceOwnerComponentOnAnyUser()

int getDeviceOwnerUserId()
boolean isDeviceOwnedByDeviceOwner()

String getDeviceOwnerNameOnAnyUser()

* APIs that work within user. No permissions are required.

boolean isDeviceOwnerAppOnCallingUser(String packageName)
ComponentName getDeviceOwnerComponentOnCallingUser()

Bug 24676413

Change-Id: I751a907c7aaf7b019335d67065d183236effaa80
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
15a46b07c5734b14df60ea28ab7a7cd26df2fc17 11-Nov-2015 Mahaver Chopra <mahaver@google.com> Add method isManagedProfile and isSystemOnlyUser

Adding method isManagedProfile() and isSystemOnlyUser() for DPC to know
if running in a managed profile or system only user

Bug: 24464823
Change-Id: I79974fdfd60d2bfe52dee3b4c95becf47a5bf0b1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
883f12ac5ac818e678af46b64a3f6e97b51caabe 23-Nov-2015 Alan Treadway <alantreadway@google.com> Merge "Revert "Disable multiple user for corp-liable mode""
86e5d6b868aec6fa4d3070f36d458798968c85f9 23-Nov-2015 Alan Treadway <alantreadway@google.com> Revert "Disable multiple user for corp-liable mode"

This reverts commit 1dc510eb5bc7f279002a3479f24761f08cc390f7.

Change-Id: I12ea8275369cbdc4e95b21c7f5d51b4f0e5da7b2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
959ad4a02967502db7a3847faffa17d68a9afdcf 23-Nov-2015 Nicolas Prévot <nprevot@google.com> Merge "Fix doc for EXTRA_PROVISIONING_COLOR."
9aa233899f7cf5c1cdf4181412a9e197d83ab1a3 23-Nov-2015 Ricky Wai <rickywai@google.com> Merge "Add work contacts directory support in Quick Contacts API"
494b95d30266335044a854845219b6e34cf43edb 20-Nov-2015 Ricky Wai <rickywai@google.com> Add work contacts directory support in Quick Contacts API

Bug: 25764505

Change-Id: I61f9d13ea03352e3df1686ee4b3bcc43e9a9a760
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cd2d85941aa634a1ab2d61f7e8775c26f5ab7889 23-Nov-2015 Nicolas Prevot <nprevot@google.com> Fix doc for EXTRA_PROVISIONING_COLOR.

Change-Id: Ic6fdb7978658e0187af9e2b29960dbd0a803dc85
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fbabc7f552c638e529ae468eed3dba782305455e 23-Nov-2015 Nicolas Prévot <nprevot@google.com> Merge "Add extra in DevicePolicyManager to colorize the provisioning."
71c84e515e73f6a3cb30d68fc81f88e1bd02b5e3 23-Nov-2015 Mahaver Chopra <mahaver@google.com> Merge "Disable multiple user for corp-liable mode"
09b108e2bb6b585947249eda92c047d0b582e8a0 21-Nov-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Added keep-uninstalled-packages DO policy"
cb6fd80721253ffa9dcab5cf8c2f4e9b9cd17ccc 05-Nov-2015 Fyodor Kupolov <fkupolov@google.com> Added keep-uninstalled-packages DO policy

This policy allows DO to specify a list of apps to cache even without being
installed on any user.

Bug: 23938464
Change-Id: I2eeab7f148409739fc23a5c44e955ad12b63fd04
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
caf11cdc12e9811062271a4be73d7956b56c0e45 19-Nov-2015 Nicolas Prevot <nprevot@google.com> Add extra in DevicePolicyManager to colorize the provisioning.

The dpc may pass an extra to indicate a color that will be used
to colorize the provisioning.

BUG:25678389
Change-Id: I8b818cca3dbb5300cec2de7b861bdff90200cf7c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1dc510eb5bc7f279002a3479f24761f08cc390f7 19-Nov-2015 Mahaver Chopra <mahaver@google.com> Disable multiple user for corp-liable mode

Bug: 25443050
Change-Id: Iad34e7ad0d3679626880f905f9bab9b6c2a192ed
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d7b43dd4bb315d9456f6eb74097d60a806b2db70 20-Nov-2015 Sudheer Shanka <sudheersai@google.com> Merge "Add per-user version of DevicePolicyManager.getUserRestrictions."
8b7991c1c6b8bd73d4bd77813dbfd746150b6a23 12-Nov-2015 Nicolas Prevot <nprevot@google.com> Add an extra for the logo uri to DevicePolicyManager.

Define an extra apps can use to pass an image that will
be shown during the provisioning.

BUG:25660734
Change-Id: I63674d56c7135a6106c4b32f9d45fa9377368e30
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1c277a5d8f79ebf8beeb80f67b67512d9217d953 11-Nov-2015 Sudheer Shanka <sudheersai@google.com> Add per-user version of DevicePolicyManager.getUserRestrictions.

Bug: 25663001
Change-Id: Ic5b34fee7b57670c338f11263330a1c702002edc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
46dd449420c52a8bb30f5bfe839c6043392381a1 09-Nov-2015 Alan Treadway <alantreadway@google.com> Add new ACTION_PROVISION_MANAGED_SHAREABLE_DEVICE intent action.

Bug: 25462877
Change-Id: I14bcabf993436d9936091aa82fab698eced9e4d6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
70f929eedec10b154170ad66c9d53f18bfc4f613 11-Nov-2015 Makoto Onuki <omakoto@google.com> Disallow DA to reset password, also fix all DO checks

Now pure DA (not PO, not DO) aren't allowed to change the password
if one is already set.

Also update "isDeviceOwner" check and make sure we always take
user-id into account. If one really wishes to check the package name
only, then use getgetDeviceOwner() instead.

Also change the enforceNotManagedProfile() check to what's more
generic in the FBE world.

Bug 25645900
Bug 25547523
Bug 25643916

Change-Id: I588ecf9452fe3acc1fb0b4ca0457ad662382fcd2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bfd2290824069b6eaeae4fdfd9a52c60bd73689e 12-Nov-2015 Andrei Stingaceanu <stg@google.com> Merge "Introduce APIs in DPM for setting/getting the device owner info"
54b5f25b85e4bf4df82cb7450114fb9849f1ae58 12-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Revert "Do not call into ActivityManager from DPMS within DPMS lock""
219bbafc3fa40dae163d652365cc4a97d613011f 12-Nov-2015 Makoto Onuki <omakoto@google.com> Revert "Do not call into ActivityManager from DPMS within DPMS lock"

Bug 25567963

This reverts commit 53de36f9c40c9a4ac1eb9cca8f458aa6c998c1fd.

Change-Id: I4faaa0b4c50d75e208f37b99bc1d6e2f0fff8127
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6644cd9630be363a25af5e1327f41e16ca868556 10-Nov-2015 Andrei Stingaceanu <stg@google.com> Introduce APIs in DPM for setting/getting the device owner info

This information, if set, will be shown in the lock screen instead
of the user owner information and the settings tile will be made readonly
(implementation in following CLs).

Bug: 22547309
Change-Id: Ic826d8049bc67f5e8fcfa6a91aa2017247c93b11
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7830daaa70df7719a3b5800d9262e1997bec1fbe 10-Nov-2015 Mahaver Chopra <mahaver@google.com> Documentation for ACTION_PROVISION_MANAGED_USER

Adding documentation for ACTION_PROVISION_MANAGED_USER in
DevicePolicyManager

Bug: 25614750
Change-Id: I7aa4dd3acd3f4e97a9057bf5f05ca853af54ac01
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
246b5a0993978202b19a7c02d355fddfd9506798 10-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Do not call into ActivityManager from DPMS within DPMS lock"
53de36f9c40c9a4ac1eb9cca8f458aa6c998c1fd 07-Nov-2015 Makoto Onuki <omakoto@google.com> Do not call into ActivityManager from DPMS within DPMS lock

This will allow AMS to call into DPMS within the AMS lock instead,
which will help I1537bd57b34696768ee81a979d53bb396efbc12a.

- AM.clearApplicationUserData() will not be allowed for any DA
apps.

Bug 25567963

Change-Id: I9f0d071c815a011be4f4c85c502c39d0fe0fe5e8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5e73256a48cdb10fc72779ce1644d2e13b6669b7 05-Nov-2015 Mahaver Chopra <mahaver@google.com> Add ACTION_PROVISION_MANAGED_USER

Adding ACTION_PROVISION_MANAGED_USER to DevicePolicyManager.

Bug: 25462684
Change-Id: Ic90c3471f3a9c431d728197a19ab25b9946f090a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d59262667cbcdfedd9b03dccaa26a9a000486350 09-Nov-2015 Nicolas Prévot <nprevot@google.com> Merge "Add method to tell the dpc if provisioning is allowed."
6d2beef6a819aebed4119ca06cb2369bc56dd214 06-Nov-2015 Makoto Onuki <omakoto@google.com> Merge "Add DPM.getUserRestrictions()"
3a3092fab0ccb631bc70de64f3bbe5c076a1f94b 30-Oct-2015 Makoto Onuki <omakoto@google.com> Add DPM.getUserRestrictions()

This returns per-DO/PO restrictions.

Bug 23902097

Change-Id: I225c1b01444fe2f60e5a6674d327182cc9bb15dc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
07387fedfafa72bcb68defd801eef82f1f494d7c 30-Oct-2015 Nicolas Prevot <nprevot@google.com> Add method to tell the dpc if provisioning is allowed.

The DPC can use it to tell if provisioning a managed profile or for
device owner would work or not.

BUG:25338478
Change-Id: I09ea6a9f23a8e88e4ed37c048170b2a68213086e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
759a763f5f03fda86b96d238faedb870fbee24ec 29-Oct-2015 Makoto Onuki <omakoto@google.com> Allow DO to disable camera device-wise.

Bug 24538855

Change-Id: I421690f14ee57fa818d2b233fe48a90a0a575a9e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
76b08a9d17012867cba19acde1b7b133141501e7 08-Oct-2015 Mahaver Chopra <mahaver@google.com> Documentation of EXTRA_PROVISIONING_WIFI_SECURITY_TYPE

Valid values for EXTRA_PROVISIONING_WIFI_SECURITY_TYPE in the documentation

Bug: 23379302
Change-Id: I039432d81de6834c01bbe6ca0fc668afec38d040
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a52562ca9a4144cf30e6d5c6ffe856cc8e284464 02-Oct-2015 Makoto Onuki <omakoto@google.com> setDeviceOwner() now requires a full component name.

Bug 20149907

Change-Id: I24e66159d1d966925aa3a494b1e2839b07cdafa2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e7ee54ee7f4985bc743053d38d21f33c70220f05 21-Sep-2015 Craig Lafayette <craiglafa@google.com> Remove device initializer agent

Bug: 23216982
Change-Id: I867c0b5f4165983d1ed2623a655f6a2a5e3770bb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cd86ebf1c965c191f46b6480145c9d217a7d841e 30-Sep-2015 Fyodor Kupolov <fkupolov@google.com> Check multi-user support in isUserSwitcherEnabled

isUserSwitcherEnabled now returns false if multi-user is disabled(
supportsMultipleUsers() returns false).

Removed GUEST_USER_ENABLED setting and replaced with DPM.getGuestUserDisabled
check. It currently always returns false, but will be replaced with an actual
policy check.

Bug: 17571233
Change-Id: I41853e8b321b2537952cac5d92e88bfdb8cbd9a8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cc4bbeb76af92a8484fe05f37c4ff412b4c47ccc 17-Sep-2015 Makoto Onuki <omakoto@google.com> Make DPM/DPMS unit-testable

- Now all services that DPMS uses are injectable.
- Introduce some wrappers to make static methods and final class mockable.
(e.g. for Binder.getCallingUid())

- In unit tests we replace those with Mockito mocks, except we use a partial
mock for PackageManager, because we use way too many methods of this and
most of them are okay to use directly.

- To install a partial mock to PackageManager, I needed to make
ApplicationPackageManager @hide public non-final.

- For a starter, added tests for DPM.setAmin().

Bug 24061108

Change-Id: I2afd51d8bc0038992d5f9be38c686260be775b75
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
58b684f1cdc52467b71c42cfae18433a19ce7d0b 04-Sep-2015 Makoto Onuki <omakoto@google.com> [split system] Tentatively support running DO on meat user

- setDeviceOwner() now takes a user ID. (We can infer it from Binder, but
we still need it for the dpm command.)

- Change broadcast target UID for DO to the DO user

- Start the DO user on boot complete.
TODO Investigate whether this is actually the good timing.

TODO Prevent the DO user from being killed

Bug 23827706

Change-Id: I227dbd444f1f4e94d98c317489d151554fe79d91
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8f78d6a87fa8f5f65e4fe8a206dd083fb283dad3 21-Aug-2015 Nicolas Prevot <nprevot@google.com> Fix documentation of EXTRA_PROVISIONING_DEVICE_ADMIN_PACKAGE_NAME

Say it is supported only if there is only one device admin receiver
that requires BIND_DEVICE_ADMIN.

BUG:23370442
Change-Id: I19e1e2e218f224bc337f7d8eec2b62fcb4c08d91
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4dbb37ae95bdf60d230777c6a5e8d53b932e9d40 11-Aug-2015 Esteban Talavera <etalavera@google.com> Merge "Update setApplicationRestrictions documentation" into mnc-dev
6b8e06495b8bf7a9aeecb8f189fd174fcc457235 10-Aug-2015 Esteban Talavera <etalavera@google.com> Update setApplicationRestrictions documentation

From M we support nested Bundles in the input parameter

Bug: 23076454
Change-Id: I9c27d19ccfbc713ca757cbdde7ea9fbbc3839302
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
190a88d2ce6a08d0eb98d774b81e5ca6b82b45f8 06-Aug-2015 Alan Treadway <alantreadway@google.com> Merge "Update documentation of DevicePolicyManager intents." into mnc-dev
4582f8113d1f072087b57acbc915cc066f93917d 28-Jul-2015 Alan Treadway <alantreadway@google.com> Update documentation of DevicePolicyManager intents.

Add additional information about the intentions of result codes in
device-owner and profile-owner launch intents, in alignment with
changes made in http://ag/732321.

Bug: 21063241
Change-Id: I0e0a931739cee5f46e8fc7622fe1de49e26dcb0a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
41f2ccb9e40670e6da9aa3d4deb6bbd74fae91c4 05-Aug-2015 Rubin Xu <rubinxu@google.com> Update javadoc for EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE

Starting from M, this extra is also supported in NFC bump provisioning.

Bug: 22914251
Change-Id: I835d12918c5de4ff782245def6565eeb0f052934
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0e3de6cacaffcfeda4d6353be61e2f1f9ed80705 30-Jul-2015 Dianne Hackborn <hackbod@google.com> Change MNC codename to just M.

Change-Id: I4281d200ff6560791c47cf9073ceea1cb509361e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
00799008832e11f06f9ddc0bf721799edee99f28 27-Jul-2015 Nicolas Prevot <nprevot@google.com> Send a public broadcast when the device owner is set.

Make it a protected broadcast.

BUG: 22623518
Change-Id: Ia36e8f0b80a6301d7d8e0461476842c78762b5e8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c088e30fd403b9843a00cc311e460734bd111c26 08-Jul-2015 Benjamin Franz <bfranz@google.com> Merge "Clarify javadoc of setPermissionPolicy" into mnc-dev
45dd6667e8d42c9df6957fba7e4df99b92b805ea 08-Jul-2015 Benjamin Franz <bfranz@google.com> Clarify javadoc of setPermissionPolicy

Bug: 22192363
Change-Id: I552eae1e84ce866d9873faacb5c261321351915a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3c43095757a673166359553af5dc03159177ebd3 03-Jul-2015 Zoltan Szatmary-Ban <szatmz@google.com> Update javadoc on DPM.setGlobalSetting

Bug: 19967818
Change-Id: Id91c137f7b5200be8e8b581126a518f3b6be147e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
31659c253e62546c12f17c7f09b7f8df12758371 30-Jun-2015 Kenny Guy <kennyguy@google.com> Merge "Deprecate APIs for admin to create users." into mnc-dev
fef8cbd6a643a621a97f8e5616977e1fb65d9a5f 30-Jun-2015 Esteban Talavera <etalavera@google.com> Merge "Marking some globals from setGlobalSetting as not supported" into mnc-dev
656fa7f5d1ce9299cb63043de80f2b4db9bff497 29-Jun-2015 Esteban Talavera <etalavera@google.com> Marking some globals from setGlobalSetting as not supported

Those globals don't have the intended behaviour any more.

Bug: 19967818
Change-Id: I8c7891e59280f9deb88b1f0ffead3de07f4eca56
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
14f48e5a937b07c83f7e7a37d0319f84171b692d 29-Jun-2015 Kenny Guy <kennyguy@google.com> Deprecate APIs for admin to create users.

Bug: 21921868
Change-Id: I0a59c85f6a87928de3df72278d4b65355ff7270f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
43904fd5b7ea74f21859ec94291a70529611304c 29-Jun-2015 Kenny Guy <kennyguy@google.com> Merge "Revert "Deprecate APIs for admin to create users."" into mnc-dev
2703a13f11c27c36d1354e49fb70dd663cdf397c 29-Jun-2015 Kenny Guy <kennyguy@google.com> Revert "Deprecate APIs for admin to create users."

This reverts commit ea864c4d4d7ca390d3b67868fd2a640411bff020.

Change-Id: I827e6364b61eeb9e1b2d3205b5e93e10b1df4bfe
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bee7245c69cd3d3c1404f35299c3867d1b8525f5 29-Jun-2015 Craig Lafayette <craiglafa@google.com> Merge "Hide MIME_TYPE_PROVISIONING_NFC_V2" into mnc-dev
01056b36622eafa657c95f9576ec2b4cacb741a4 29-Jun-2015 Kenny Guy <kennyguy@google.com> Merge "Deprecate APIs for admin to create users." into mnc-dev
3cc72bab488b7395347a3f30b40632d78d819b43 26-Jun-2015 Craig Lafayette <craiglafa@google.com> Hide MIME_TYPE_PROVISIONING_NFC_V2

Bug: 21918725
Change-Id: I33d67ff8f7b47ab53cff8a2664d342caf9d6e03f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ea864c4d4d7ca390d3b67868fd2a640411bff020 22-Jun-2015 Kenny Guy <kennyguy@google.com> Deprecate APIs for admin to create users.

Bug: 21921868
Change-Id: I956d24a8394d95bf975581a3451ceabe01708a10
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c200f44c46b7d6ddb104c0f09f2a4c679e218d0b 25-Jun-2015 Benjamin Franz <bfranz@google.com> Block assist when screenshots are disabled by policy

When a device or profile owner disables screen capture, we also want to
block context data being collected for the assist structure.

Bug: 21797707
Change-Id: Ib8716c6dd71d538a027c04e1e907c87e2afa0ac8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
28b9570d0235eca305dc76c006a54c8a85cf5db8 24-Jun-2015 Esteban Talavera <etalavera@google.com> Reset permission policy to default when device owner goes away

Otherwise after the Device Owner is gone, runtime
permissions might still be auto granted/denied.
I understand that there are many other policies that
we don't reset after the device/profile owner goes
away (e.g. keyguard enabled/disabled). At least now
we have a single method when we could clear the
ones that we care about.

Bug: 21889278
Change-Id: I6997655e6ef6d474bd25ae1c323eca5b17944b16
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0bf8f7cc3982164a9e11ea4a25ed930e466f1dd8 22-Jun-2015 Amith Yamasani <yamasani@google.com> Runtime permissions cannot be set on legacy apps by device policy

Clarify docs that runtime permissions can be granted or revoked by
a profile owner/device owner only for MNC apps and not legacy apps.

Check the targetSdkVersion and return false if legacy app.

Remove all policy flags from permissions when cleaning up
a device or profile owner.

Bug: 21835304
Bug: 21889278
Change-Id: I4271394737990983449048d112a1830f9d0f2d78
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2c3c66a2cf06b4d081f539a1fa01b44780cc65dc 23-Jun-2015 Zoltan Szatmary-Ban <szatmz@google.com> Merge "Introduce Settings.Global.WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN" into mnc-dev
d66559f26da245d433b642d584ef290dc1fabfcc 22-Jun-2015 Julia Reynolds <juliacr@google.com> Merge "Hide device initializer methods/fields." into mnc-dev
b4c469095f12972ef04558961ddbdbdfe8305ccb 18-Jun-2015 Craig Lafayette <craiglafa@google.com> Merge "Remove FRP wipe support for device initializers" into mnc-dev
94e7bf6ed59f386019dcb563145b16e5102bed81 10-Jun-2015 Julia Reynolds <juliacr@google.com> Hide device initializer methods/fields.

Bug: 21605288
Change-Id: I4c861a053d585c16f8d05cbb3648ee5c82f6ca01
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dd862aebda15a5b63c90b1b670373028b48172c4 16-Jun-2015 Rubin Xu <rubinxu@google.com> Merge "Deprecate SHA-1 in ManagedProvisioning (API doc change)" into mnc-dev
dbc86ad170e2c288f0154a264d12bd6dadf78c45 16-Jun-2015 Benjamin Franz <bfranz@google.com> Merge "Update documentation for PASSWORD_QUALITY_SOMETHING" into mnc-dev
c6a9653e0a4a8923116a01a5d690f5369ab63e43 16-Jun-2015 Benjamin Franz <bfranz@google.com> Update documentation for PASSWORD_QUALITY_SOMETHING

Add a mention that PASSWORD_QUALITY_SOMETHING includes patterns.

Bug: 20441473
Change-Id: I2608f36e338fb2bfbace80d49ee805841d59fa17
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d92e75776cb19a7ab0f81819a113dd6323860bba 18-May-2015 Rubin Xu <rubinxu@google.com> Deprecate SHA-1 in ManagedProvisioning (API doc change)

Bug: 21153521
Change-Id: Ie4ee70063457260e147e6c00458f96ccc6a425e0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a4f9dc1cf0297dc93615e638fd490e4ef346a249 12-Jun-2015 Rubin Xu <rubinxu@google.com> Update doc of ACTION_PROVISION_MANAGED_DEVICE

It also supports an optional extra EXTRA_PROVISIONING_ADMIN_EXTRAS_BUNDLE

Bug: 21797182
Change-Id: Ie145e6a79dd7eebdbb4cc58e1baba761b9cc5bbf
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5c82d2cc17df9774e677f6bab9cb52659fc2b56d 02-Jun-2015 Rubin Xu <rubinxu@google.com> Change references to APK Certificate to Signature

The fact that currently apk signature is certificates is just
implementation details.

Bug: 20820366

Change-Id: Icdd02cb51a550ea71ff83a84e2bdfcc21f8d43ed
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
09ad6bfe9619ff7a61209131f1f3182d53d840d0 02-Jun-2015 Craig Lafayette <craiglafa@google.com> Remove FRP wipe support for device initializers

- Remove ManagedProvisioning NFC parameter key from
DevicePolicyManager
- Remove wipeIfAllowed from PersistentDataBlockManager

Bug: 21558883
Change-Id: I59354b7bb1ef7e0b0346ff9a7d1654780231dff0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
77b2d49abb38fafb91fb99ce603a92f189553cd7 11-Jun-2015 Craig Lafayette <craiglafa@google.com> Merge "Remove device initializer status messages" into mnc-dev
d168d184c02c33863b4eda56fae431437f609e2c 11-Jun-2015 Benjamin Franz <bfranz@google.com> Merge "Align the behaviour of different lock task modes" into mnc-dev
83881bdbdee14cc9726c89019490a0514686f314 10-Jun-2015 Robin Lee <rgl@google.com> Policy: make bulk CA uninstalls happen in service

Fewer round trips, only one point of contact for bugs to creep in.

Bug: 21650477
Change-Id: I1764faa753bd674ecb0d13149d778d99bd2ff4c4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
cedd53adc3875fe1b4275afa35ec5c3ede7b6c39 09-Jun-2015 Julia Reynolds <juliacr@google.com> Remove the ability to set a preferred setup activity.

Bug: 21557327
Change-Id: I8c1809d25c5f5fcd186dfc0636d8ac47ed5fc903
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
469dd58baecb08d8f6daf559595362ada5fbe545 09-Jun-2015 Benjamin Franz <bfranz@google.com> Align the behaviour of different lock task modes

Currently lock task modes started by the activity flag
android:lockTaskMode behave differently from those started using
startLockTask(). With those changes lock tasks initiated by non-priv
apps cannot finish without calling into stopLockTask. Revoking the
whitelisting on a locked task will also kill that task, independently
of the way the lock task mode was started.

Bug: 21608206
Change-Id: I841abf1103855e2d7218a4a8ca9b43c105630dc9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4045d24971fea4f1506ac8f16d4deeb76ac415fe 27-May-2015 Zoltan Szatmary-Ban <szatmz@google.com> Introduce Settings.Global.WIFI_DEVICE_OWNER_CONFIGS_LOCKDOWN

This setting controls whether WiFi configurations created by a Device Owner app
should be locked down (that is, editable or removable only by the Device Owner).

Bug: 21427528
Change-Id: I0f8fb72bf9da1597e08d3dfc631d37b6b4178ff5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
64bf7b2870b4fd38c859080441927f5a63196f5a 29-Apr-2015 Nicolas Prevot <nprevot@google.com> Make ACTION_PROVISION_MANAGED_DEVICE public.

Also remove the doc saying that factory reset is impossible if there
is a device owner: the device owner may not set the user restriciton
DISALLOW_FACTORY_RESET.

BUG:19889110

Change-Id: Iadc084a38e541061c0b0c95bfc95da73d48842d7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
25e264507cc665e11d5f0cef1360408b3a2da07e 02-Jun-2015 Robin Lee <rgl@google.com> Device policy: consistent javadoc and annotations

Annotated all uses of the ComponentName parameter to methods in
DevicePolicyManager to indicate whether null is acceptable.

Deleted/fixed some inconsistent or poorly-worded documentation.

Bug: 21422939
Change-Id: Iadfa78c5170bf4899a9daaf93c3d4e9d8b170a45
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
240e64828f68064b2a1074a1dda1fc41fe19d711 02-Jun-2015 Craig Lafayette <craiglafa@google.com> Remove device initializer status messages

- Remove ManagedProvision Bluetooth extras from
DevicePolicyManager
- Remove ManagedProvisioning device initializer status
action and extras from DevicePolicyManager.
- Remove DIA status update protected-broadcast
and permission
- Remove DPM.sendDeviceInitializerStatus method

Bug: 21559093
Change-Id: Ibb651ebb2772ace6a16a5830f82f75465150e6e3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
12e5fec238c6576c1fdec1a88d6696fc29426797 28-May-2015 Fyodor Kupolov <fkupolov@google.com> Merge "Fixed indentation in setProfileName method" into mnc-dev
78f1314a695838c0630da96f03af68a107816fa6 28-May-2015 Fyodor Kupolov <fkupolov@google.com> Fixed indentation in setProfileName method

Change-Id: I819bfd509b184b7952d8f9c466c9418353f890cb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
184b3753de54241c67799089f5bc59a1ede4438a 22-May-2015 Amith Yamasani <yamasani@google.com> Add getPermissionGrantState method in device policy

This is to have a way to query what permission state was set by
the profile owner.

Bug: 21356830
Change-Id: Ie396e946b4285267c1d95f82b9d9765b43697d3c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d8ecc5aee49874ac1f100f69be94906a3e99b951 20-May-2015 Svet Ganov <svetoslavganov@google.com> Allow DO/PO to go back to normal permission state.

We have APIs for a DO/PO to fix a permission in a granted or
denied state in which the user cannot manage this permission
through the UI. However, there is no way to go back to the
default state in which the user gets to choose the permission
grant state.

Change-Id: I2562a1d8b1385cd740b44812844ef14c895c2902
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
467eb0566ff1df320c9a9be3da0f44ee3d6bc9fa 13-May-2015 Kenny Guy <kennyguy@google.com> Merge "Allowing profile to set a subset of keyguard restrictions." into mnc-dev
396d944001f0b897b1689baa0bd7d3e04046b3ca 13-May-2015 Julia Reynolds <juliacr@google.com> Merge "Remove initiator name param." into mnc-dev
22fec2201f01222d61c84f536289fd1e8bb5a03f 13-May-2015 Nicolas Prevot <nprevot@google.com> Merge "Fix the doc for ACTION_MANAGED_PROFILE_PROVISIONED." into mnc-dev
ebe2d991602a20e051d94ec77300336383d1e7eb 13-May-2015 Nicolas Prevot <nprevot@google.com> Fix the doc for ACTION_MANAGED_PROFILE_PROVISIONED.

In the html doc, it showed up as (@see #ACTION_PROVISION_MANAGED_PROFILE).

Change-Id: I4b3eec26525c6bd87319296f4bb89d037dfc3d03
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
731051e36bb2d420a29cd889a38e02c88c930aad 11-May-2015 Julia Reynolds <juliacr@google.com> Remove initiator name param.

This won't be shown in the UI; it's not needed.
Bug: 20820224

Change-Id: I51ecd0a9151a49e26faf52e792a0b316a8facc8e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0b7dd1e6c8422da0a21c1631244bec7a2af5085a 12-Mar-2015 Kenny Guy <kennyguy@google.com> Allowing profile to set a subset of keyguard restrictions.

Allow admins in managed profiles disable trust related
keyguard features (trust agents and finger prints) for the
parent user.
Allow admins in managed profiles to control whether notifications
from the profile are redacted on the keyguard.

Bug: 18581512
Change-Id: Ic2323671f63781630206cc2efcc8e27ee58c38e6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d86d58cd010b087d6d481062f84c894e0ced7bbc 05-May-2015 Rubin Xu <rubinxu@google.com> Tweak SystemUpdatePolicy according to API review.

Make SystemUpdatePolicy Parcelable; hide public constructor and
expose static builder methods.

Bug: 20820025
Change-Id: I594ba3c7e5514551134ba6c866b24498b66506bf
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ed1ef7d4eb8934f6940a2e828ebd0e6878e1af89 09-May-2015 Craig Lafayette <craiglafa@google.com> Merge "DeviceInitializerStatus API review changes" into mnc-dev
4e401fa49875e083d18b46e0250be37ad565071c 07-May-2015 Craig Lafayette <craiglafa@google.com> DevicePolicyManager API review changes

Renamed DO_NOT_ASK_CREDENTIALS_ON_BOOT to
RESET_PASSWORD_DO_NOT_ASK_CREDENTIALS_ON_BOOT.

Bug: 20820907
Change-Id: I6455f9a6d370afbd5154505f402b409dba3b7918
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9ef04bfb0711d54fc951ca79d38c4d14a0cc817a 06-May-2015 Craig Lafayette <craiglafa@google.com> DeviceInitializerStatus API review changes

- Remove DeviceInitializerStatus.is*Status()
- Remove DeviceInitializerStatus.FLAG_STATUS_RESERVED
- Rename STATUS_STATE_CONNECT_BLUETOOTH_PROXY to
STATUS_STATE_CONNECTING_BLUETOOTH_PROXY
- Rename STATUS_STATE_DISCONNECT_BLUETOOTH_PROXY to
STATUS_STATE_DISCONNECTING_BLUETOOTH_PROXY

Bug: 20819590
Change-Id: I276c5674a36726d3681dcc29e896ad39888d116d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
94fb2024b013522e95a880e02b73886fa7d01222 06-May-2015 Benjamin Franz <bfranz@google.com> Merge "Rename functions that disable status bar and keyguard" into mnc-dev
bece80645e2b2d84ea65aabfa7fc01d5ad633708 06-May-2015 Benjamin Franz <bfranz@google.com> Rename functions that disable status bar and keyguard

Rename the DevicePolicyManager functions setKeyguardEnabledState and
setStatusBarEnabledState to setKeyguardDisabled and
setStatusBarDisabled respectively.

Bug: 20820039
Change-Id: I06f6a19ac55b24e66e9f2cb340ead5d940cb2235
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2f46d949e2e901eb4c0dcc3e8e3b8ddba2f24109 05-May-2015 Julia Reynolds <juliacr@google.com> Fixing docs.

Bug: 20823970
Bug: 20820224
Change-Id: If6b5c43ae5cf88bd5a09adc60c1204ba9e6ab459
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ddd553f2aee4f3821a2f17636bb86d9fa5af9bd7 30-Apr-2015 Robin Lee <rgl@google.com> Device policy: use owner label instead of name

Managed provisioning does not currently set a meaningful profile owner
name. This changes to use the application label as returned by
PackageManager.getApplicationLabel which should be more descriptive.

Bug: 20679292
Change-Id: I5a0e87ef05b62879a73814e6d338e8b984b81c94
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d49489b3af01c13d3b13af1cd04d53787185cc0a 28-Apr-2015 Amith Yamasani <yamasani@google.com> Permissions control via profile/device owner admin

Profile owners and Device owners can set policies for runtime
permissions. Blanket grant/deny policy can be set for a user.
They can also explicitly grant/revoke permissions for specific apps
which cannot be overridden by the user and will not be prompted.

[More implementation required in PackageManagerService and
PackageInstaller]

Bug: 20666663
Change-Id: I2c25c18c2a195db9023a17716d5896970848bb45
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
13c58bacc8f1ff35bb24ba19069bab8a41aabf68 20-Apr-2015 Julia Reynolds <juliacr@google.com> Allow device initializers to set a preferred setup activity.

This activity will launch by default on device reboot or user switch
during user initialization, even if there are higher priority 'home'
activities.

Bug: 20223050
Change-Id: I335aeb010a1ae5db07a4343d26e160c74bd299e1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2806374f9531490296547d4e884ce9163f4ac867 08-Jan-2015 Nicolas Prevot <nprevot@google.com> Restrict setting the profile/device owner with a signature-level permission.

Create the new permission MANAGE_PROFILE_OWNERS to restrict setting
the profile/device owner.

BUG:19838376

Change-Id: Ib55a2db85fcb6f34e3b88c398683bddb0ad66868
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
dc105cc91c63c27479d73a21702cd4ba0304acc4 15-Apr-2015 Rubin Xu <rubinxu@google.com> Enable system service to notify device owners about pending update

Create a DevicePolicyManager API which can be used by OTA subsystem
to tell device owners about pending updates. Device owners will get
a callback from its DeviceAdminReceiver when the update service sends
out such notifications.

Bug: 20213644
Change-Id: Ifcc755655e4f441980cf77d76175a046112ca9ae
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4eb6a36922f5e98fe181c0326cc5721f0e7589ca 02-Apr-2015 Andrei Kapishnikov <kapishnikov@google.com> Introduced DO_NOT_ASK_CREDENTIALS_ON_BOOT flag

A new flag for DPM.resetPassword() method that specifies that the
device should be decrypted without asking for the password or pattern.

Bug 19250601

Related CL in Settings App: https://googleplex-android-review.git.corp.google.com/#/c/670206

Change-Id: I9ca3472dc18e66e618ff772dee16ca4a450e9997
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
97e2f7d5afebb107a8c2c65a094ae4426bbe701b 21-Apr-2015 Rubin Xu <rubinxu@google.com> Merge "Rename public OTA policy APIs in DevicePolicyManager"
5faad8e4cdf04211239f076b5d073e26d0ae3207 20-Apr-2015 Rubin Xu <rubinxu@google.com> Rename public OTA policy APIs in DevicePolicyManager

Use the term "SystemUpdate" instead of "OTA", in public
DevicePolicyManager APIs that handle OTA policies.

Bug: 19650524
Change-Id: Iebdaea91337d617147cb411b6f47e0f3fae8671c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e94787a027763a6da7428639b0f5d00e23aa2196 20-Apr-2015 Sander Alewijnse <salewijnse@google.com> Merge "Add certificate checksum extras."
ea2ec97f37c649881f2be8a5cc40bf44080cc632 16-Mar-2015 Benjamin Franz <bfranz@google.com> Introduce device owner API to disable the status bar

Let the device owner disable the status bar to achieve multi-app single purpose
mode. When the status bar is disabled, quick settings, notifications and the
assist gesture are blocked.

Bug: 19533026
Change-Id: I72830798135136e5edc53e5e2221aebb9a7c7d57
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e4f878cbe663a7b48f879d57ec003cebf0dcd1b6 14-Apr-2015 Sander Alewijnse <salewijnse@google.com> Add certificate checksum extras.

Bug:19984678
Change-Id: I4fc24ea98869b8331185f53e8aacacdb3775a53d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e36087e5b6eeb92607f4ad5b3b1662bef9bafa4c 07-Apr-2015 Benjamin Franz <bfranz@google.com> Introduce device owner API to disable the keyguard

Let the device owner disable the keyguard to achieve undisturbed single
use mode with multiple apps. Calling this API has no effect if a
password
has been set for the calling user.

Bug: 19533026
Change-Id: I6b726b7f36efb669359e9da4b7e3db1f8031dad5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c9c9f7b40ec77217ce595fd152a505481326dc9a 14-Apr-2015 Rubin Xu <rubinxu@google.com> Merge "Add setOtaPolicy/getOtaPolicy API in DPMS"
0c606812c5102fd19eda4b3e1ffbc9e61fec6430 14-Apr-2015 Ricky Wai <rickywai@google.com> Merge "Add Bluetooth Contacts Sharing policy in DevicePolicyManager"
778ba135380cda90c4c9317c34e875c00e2743a3 31-Mar-2015 Ricky Wai <rickywai@google.com> Add Bluetooth Contacts Sharing policy in DevicePolicyManager

Bug: 19990979

Change-Id: Ide9adf66eec5721e50573c03956a1b63b7e8b18b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8027a4ffc285ba39df3a262abfff1cfdd6dd31db 10-Mar-2015 Rubin Xu <rubinxu@google.com> Add setOtaPolicy/getOtaPolicy API in DPMS

Allow device owners to set OTA policy for automatically accept/postpone
incoming OTA system updates. This class only provides the setting
and getting of OTA policy, the actual OTA subsystem should handle
and respect the policy stored here.

Bug: 19650524
Change-Id: I9b64949fab42097429b7da649039c13f42c10fd1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c06bbbfe7ac3c848384cb667b23c42ce26cc5d95 14-Apr-2015 Rubin Xu <rubinxu@google.com> Merge "Grant cert installer access to installKeyPair()"
dbe31a6616f2e8cb8436ea235149d076302fb793 02-Apr-2015 Craig Lafayette <craiglafa@google.com> Send device initializer status.

- Create method in DevicePolicyManager to send device
provisioning status to ManagedProvisioning.
- Define status updates used by ManagedProvisioning.

Bug: 20001077
Change-Id: Ia98fc765d1ebb2ba9680636ca15c2c870d160261
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bc80a260cf9e1278f29bae22738ac6c03caa4ded 07-Apr-2015 Craig Lafayette <craiglafa@google.com> Merge "Add factory reset protection extras to DPM."
eaafdf72a410b445cee9fea274a57f31aec2509f 02-Apr-2015 Julia Reynolds <juliacr@google.com> Store the device initializer componentname in addition to package.

This removes ambiguity about which component in the initializer
package handles device initialization when setting up secondary users.
Bug: 19992262

Change-Id: I2e48168907725a56cd05d0b51c9f28b34fa28d1a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
acdc1839cf73c5ee1672f19f7098b81abdd4f0bc 02-Apr-2015 Rubin Xu <rubinxu@google.com> Grant cert installer access to installKeyPair()

Bug: 20041977
Change-Id: Id0dc0bce8461c71d7220c1802dcca82933805996
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8e27c4ddaeb4414bd0e658553672fa9cc57a41d3 19-Mar-2015 Craig Lafayette <craiglafa@google.com> Add factory reset protection extras to DPM.

This extra will be sent to ManagedProvisioning via
an NFC bump and allow factory reset protection challenges
to be cleared.

Bug: 19792435
Change-Id: I82b0e35ec7af4372341c202c06b643d6395cc65c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1040da1d4eb99fd2588e4c4d5b08b2e3fc0c7777 19-Mar-2015 Makoto Onuki <omakoto@google.com> Enterprise quick contact 1/2

Now openQuickContact goes thorough DPM. When a lookup URI is build with
a lookup key returned by the enterprise lookup APIs for a corp contact, the
lookup key will have a special prefix. In that case we go through DPM
and have it launch QC on the managed profile, if the policy allows.

For now we use the same DPM policy as enterprise-caller-id to disable this.

Design doc: go/cp2-mnc-enterprise-dd

Bug 19546108

Change-Id: I831a8190ae902ae3b1248cce6df02e3a48f602d2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4fd8d4ab2aafe8ed73080408223e8b20a953cfc4 30-Mar-2015 Makoto Onuki <omakoto@google.com> Revert "Enterprise quick contact 1/2"

This reverts commit 75a0882b946df6de4775c9e54ca023ff54f3f678.

Change-Id: Ibe332885824b228bf1b1147d141c9395554ff67f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
75a0882b946df6de4775c9e54ca023ff54f3f678 19-Mar-2015 Makoto Onuki <omakoto@google.com> Enterprise quick contact 1/2

Now openQuickContact goes thorough DPM. When a lookup URI is build with
a lookup key returned by the enterprise lookup APIs for a corp contact, the
lookup key will have a special prefix. In that case we go through DPM
and have it launch QC on the managed profile, if the policy allows.

For now we use the same DPM policy as enterprise-caller-id to disable this.

Design doc: go/cp2-mnc-enterprise-dd

Bug 19546108

Change-Id: I4840e7fad8a6a60249df07d993d26d03619650d4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6a38e43b8bc6b4329f5df9493f76a232eece0423 26-Mar-2015 Rubin Xu <rubinxu@google.com> Fix build breakage by ag/661236

Change-Id: Ia42440f238d76066f449dccc463b0485ab558c4d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a55c27a79b01a7903c765618a174c2273804a249 26-Mar-2015 Rubin Xu <rubinxu@google.com> Merge "Change doc for device initializer agent extra's type."
44ef750bd4cefd5141616b7fb482bd62b35dd830 23-Mar-2015 Rubin Xu <rubinxu@google.com> Change doc for device initializer agent extra's type.

Change the DIA extra's type to ComponentName, making it consistent with
EXTRA_PROVISIONING_DEVICE_ADMIN_COMPONENT_NAME.

Bug: 19891726
Change-Id: Ib41a9d22ff22e114cde80010fbc41db26f2b5f82
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f1989002501f8133141deb7db34733b7c2e21167 25-Mar-2015 Amith Yamasani <yamasani@google.com> Merge "Fix documentation for ACTION_SET_PROFILE_OWNER"
814e9873bda63cbfbb792009a28af7eae851907c 23-Mar-2015 Amith Yamasani <yamasani@google.com> Fix documentation for ACTION_SET_PROFILE_OWNER

Does not require the mentioned permissions.

Bug: 19892754
Change-Id: I22f2563c4f50457dbeb22d734e96a99ef79adf2b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
35e71f57b48ce7e0e5c14d1e14b0ed588148fdc8 16-Mar-2015 Andrei Kapishnikov <kapishnikov@google.com> Framework: Introduced new NFC provisioning mime-type application/com.android.managedprovisioning.v2

Related CL: https://googleplex-android-review.git.corp.google.com/657588
Bug: 19673809

Change-Id: I292f9a5b5c511c9102fb43fe938b0389af7fbc54
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6fd1705fbc748a820cc1360acf8b6cd5999e3ea5 25-Mar-2015 Rubin Xu <rubinxu@google.com> Merge "Fix doc for package checksum in DevicePolicyManager."
1cef4196886b0cc1238111d396c1e3665a5fd2ae 24-Mar-2015 Craig Lafayette <craiglafa@google.com> Merge "Add Bluetooth connection extras to DPM."
e30ab114b1237ad88989a3d4acc608163e707451 24-Mar-2015 Rubin Xu <rubinxu@google.com> Fix doc for package checksum in DevicePolicyManager.

The checksum should be in the URL-safe base64 encoded form.

Bug: 19895519
Change-Id: I84523b796b980fb0ab8825c1ab9245489039564a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
97e473e1e19f4338f15395e5b371171fcd6e23ab 19-Mar-2015 Craig Lafayette <craiglafa@google.com> Add Bluetooth connection extras to DPM.

These extras will be used in ManagedProvisioning to allow
Bluetooth connections from provisioned devices.

Change-Id: I7118acd4ea71e2028a0c9f0c61031c78deef8908
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
151df5db5f7e7b5c094d818bac2c02328eb80b41 23-Mar-2015 Julia Reynolds <juliacr@google.com> Merge "DPM constants for specifying minimum version numbers for DO and DIA."
c173174a20510b0ceae8c4b698725c9f9a09573e 19-Mar-2015 Julia Reynolds <juliacr@google.com> DPM constants for specifying minimum version numbers for DO and DIA.

Bug: 19859261
Change-Id: Id2730dc33d433e21f3afab4f0c31c3371f368afc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ec32b56cc22658ecb549390fe0096fc6d7b5ac2a 03-Mar-2015 Rubin Xu <rubinxu@google.com> Add DelegatedCertInstaller API in DPMS

Allow device/profile owner to delegate certificate APIs to third-party
certificate installer apps.

Bug: 19551274
Change-Id: Iaf9abb5ecb1dc0975fa98ea14408fe392d52fbf4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ee1f24ff2985a32b473244cc464b3ca7854de189 16-Mar-2015 Robin Lee <rgl@google.com> Merge "Recognise insecure encryption with a new constant"
68cc42009e656b785420c531e39c131bbe6729cf 11-Mar-2015 Benjamin Franz <bfranz@google.com> Allow DO to set Settings.Global.STAY_ON_WHILE_PLUGGED_IN

Bug: 19704419
Change-Id: I3fc970eae8ef947775b6b565916bb245dea1b43b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ba4df962972ee271e204d157aa785cb7d0b5d968 10-Mar-2015 Rubin Xu <rubinxu@google.com> Merge "Document behavior change of isUninstallBlocked() since L MR1"
e1e6faad7b212d4042e74ca94f5428a346528ac0 10-Mar-2015 Rubin Xu <rubinxu@google.com> Document behavior change of isUninstallBlocked() since L MR1

Bug: 17914630
Change-Id: I39ee2775c104e4dca7ca583b83deef0aa0e4d1e3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e71a2be2ba148dc14b168127b93bb05141d7970e 09-Mar-2015 Adrian Roos <roosa@google.com> Merge "Revert "Remove TrustAgent whitelisting API""
1844025738e58d9556bf875233bfee9e9ff8e4fe 09-Mar-2015 Nicolas Prevot <nprevot@google.com> Add a new extra to specify the admin component for provisioning.

An app may have several device admins.
For this case, allow the caller to specify which one will become
an active device admin, and the profile owner (in the profile owner flow).

BUG:19348295
Change-Id: Ia5f995eed6c7f8933eb00d3250daa703ba6ee616
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2482100fed93eac82f7d4b759bd1ec418b55be58 06-Mar-2015 Julia Reynolds <juliacr@google.com> Merge "Allow device and profile owners to set a user icon."
b37f5182052e7a3ab9e249a434367077c8d82400 05-Mar-2015 Adrian Roos <roosa@google.com> Revert "Remove TrustAgent whitelisting API"

This reverts commit bc4f2ccf6cfd1a512ad907eda2713ea3c4a1755e
and re-enables the API for MNC.

Bug: 19461292
Change-Id: I53b94bacb6a879fcc0598edfc0f3d44a9dd9e84c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1c3754a35c434e4102c7ac3dceb887fa137b153b 05-Mar-2015 Julia Reynolds <juliacr@google.com> Add security check for clearDeviceInitializer in the service.

Bug: 19230954
Change-Id: I5c648492bef0d2b579b6f59b91afc890e3092d36
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e925440a551b66a3d3121ec8badaf948d71d66a1 11-Feb-2015 Julia Reynolds <juliacr@google.com> DOs can clear the DI; rehide hasUserSetupCompleted.

Bug: 19230954
Change-Id: I97467229b23f3c9be1c3c4fff1c888a812f14a95
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fca04ca0965d5e04dacc025b77f2b4881ee1afd8 17-Feb-2015 Julia Reynolds <juliacr@google.com> Allow device and profile owners to set a user icon.

Change-Id: I7c2bafb85cff3fa063af7a2f27b76c69172f0525
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
20118f18c11c01c7743b5646cc1a0039c2e90037 11-Feb-2015 Julia Reynolds <juliacr@google.com> Allow the device initializer to perform user setup tasks.

A device initializer is an application that is allowed to run
during user provisioning on device owner devices. During
device provisioning (or, user provisioning of the first user
of the device), a device initializer is granted device owner
permissions. During secondary user provisioning, a device
initializer is granted profile owner permissions. Once
provisioning is complete for a user, all elevated permissions
are removed from the device initializer and the device admin
component of the app is disabled.

Bug: 19230954
Change-Id: Ib6725fb3b09bb21e4198a5dc0b445ccebb40b27e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2eedc9f96ad225bd4fb745215504f84ab88d8f67 03-Mar-2015 Joe Fernandez <joefernandez@google.com> resolved conflicts for merge of 5864f5ed to master

Change-Id: I6e413076af7fce85a5300abb2ba529c589dbc7e8
246a3a4a797edf5850073ec8f6b8aa997947d09b 03-Mar-2015 Joe Fernandez <joefernandez@google.com> am 14fcef3b: am c4418980: am a31378dc: Merge "Minor typo fixes in managed profile Javadoc reference pages." into lmp-docs

* commit '14fcef3bf02f46a057676d7a6d755daee735c4ea':
Minor typo fixes in managed profile Javadoc reference pages.
27f5337841f41dabbbf4db57e7091e54c4ab61a0 03-Mar-2015 Andrew Solovay <asolovay@google.com> Minor typo fixes in managed profile Javadoc reference pages.

See first comment for stage location.

bug: 19389235
Change-Id: I2e1d5169a77e3f4000e73f08d493953ce4eee78c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
abc03c7ae8c9c628de319819a10ce2cbaedf1c86 26-Feb-2015 Nicolas Prevot <nprevot@google.com> Merge "Fail silently when changing BLUETOOTH_ON/WIFI_ON directly"
6cdb27e7324b43d5e907f2be1de46d8b4db02398 26-Feb-2015 Benjamin Franz <bfranz@google.com> Fix javadoc for setLockTaskPackages

Bug: 19523388
Change-Id: Idc6bdb6c7c37de2448eb2db84ab1685660639100
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
41916d492c38055928ae5ad1e0b815ff79dc4f5c 24-Feb-2015 Nicolas Prevot <nprevot@google.com> Fail silently when changing BLUETOOTH_ON/WIFI_ON directly

If the device owner tries to change BLUETOOTH_ON or WIFI_ON via
DevicePolicyManager.setGlobalSetting, fail silently.

There was not much point for the device owner to do it since it can
also change bluetooth/wifi state via normal bluetooth and wifi apis.

BUG:19311992

Change-Id: Ifba163800aa413865b8a2877cb21aacfa5cfc6c8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
74160d8cdb2d6d63ebb9c904cb6b83271d96555c 25-Feb-2015 Jim Miller <jaggies@google.com> am b060f018: am 91aa1bdb: am 19847b07: am b46e4806: Merge "Remove TrustAgent whitelisting API" into lmp-mr1-dev

* commit 'b060f018effb27a79797e55f9eb6a592db2cb39a':
Remove TrustAgent whitelisting API
bc4f2ccf6cfd1a512ad907eda2713ea3c4a1755e 25-Feb-2015 Jim Miller <jaggies@google.com> Remove TrustAgent whitelisting API

Due to a bug caught late in the release, this API is broken
and should be removed from API 22 because it's too late for
a fix and there's no workaround.

Bug 19461292

Change-Id: Ib0757a4484b14afe7f83ae9527bb3f5f4834ee62
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3795fb0a13bfa3c76113b1ecec383e8767824ee3 16-Feb-2015 Robin Lee <rgl@google.com> Recognise insecure encryption with a new constant

This is the default state on some devices which ship with encrypted key
storage set up already but no initial password.

Bug: 18048558
Change-Id: I055527fde21298bae2dbdca8c3a145f19b045aad
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7f38aab7ab98e92fb37e4dd6c79df3799c456df5 20-Feb-2015 Ying Wang <wangying@google.com> Fix docs.

Change-Id: Iaa7f498dac5b87ee8f3cc6cfeabb04b51ce93245
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
db4bc57760aa74d50ac292c5b4c54e23a42473db 08-Jan-2015 Alexandra Gherghina <alexgherghina@google.com> New intent action for returning account migration result

Bug: 18551835
Change-Id: Ifc5dedf1753a7779793a8b056bac5f5733a2783d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
85bd63f461b117bf826003e671b3730255bbbe56 10-Feb-2015 Robin Lee <rgl@google.com> DevicePolicy: clarify wipeData docstring

Wiping secondary users or profiles does not cause a reboot.

Bug: 19294240
Change-Id: I59179b6d19061067326ea8ef1a730cc21f52ea53
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d22517a7084fd3a56f22490b405c002086dc14ac 06-Feb-2015 Kenny Guy <kennyguy@google.com> am b6332fd2: am 70fb0ab4: am 8debf213: Merge "Fix mangled javadoc for setPermittedInputMethods." into lmp-mr1-dev
automerge: afca061

* commit 'afca06105c1344dade61ec5812bf605b11de0f1c':
Fix mangled javadoc for setPermittedInputMethods.
74a7024af08d8815ab3a76fe749216b58df88858 05-Feb-2015 Kenny Guy <kennyguy@google.com> Fix mangled javadoc for setPermittedInputMethods.

Fix java doc for setPermittedInputMethods.

Bug: 19276777
Change-Id: Iecd670b35cd675ff9dd4654c9876697801eb20ac
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a9ec70ba17666e61bd003591376459aa56e1b3ec 02-Feb-2015 Julia Reynolds <juliacr@google.com> Add skip encryption constants for device owner provisioning.

Bug: 19228730
Change-Id: Id5022f2f669cf0dfc1b1523190da52c77238a02c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bdc58c66af3440f963731cdcdf820d7108d9f98a 29-Jan-2015 Fyodor Kupolov <fkupolov@google.com> Removed userHandle from setXXX methods

User handle is now extracted from UID of the calling process.

Previously setXXX methods may not work properly, if userHandle parameter
was different from a user of the calling process. In practice, this wouldn't
have happened because setters were always called with a userHandle of the
caller process.

Bug:17202572
Change-Id: I1c08c54c975a04b8c54719a1e280ad3cfaff2e67
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8abb6d5e9fb7a34cfb20f265af0885fc5b3b4adc 22-Jan-2015 Jim Miller <jaggies@google.com> am 0ac8dfa3: Merge "Clarify getTrustAgentConfiguration() documentation." into lmp-mr1-dev automerge: ffd1a49
automerge: 54dbd1f

* commit '54dbd1fd437862346f7cdacc484acd3e10501bfb':
Clarify getTrustAgentConfiguration() documentation.
b5db57a27d5147c8a46f1ba8a6016c3f95d52756 15-Jan-2015 Jim Miller <jaggies@google.com> Clarify getTrustAgentConfiguration() documentation.

Fixes bug 18983802

Change-Id: I2f6e208cdd4fac95d1d0228bec3de8199baafa57
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
568e54be71731bdbcd5338385eb6cc6a082c9456 15-Jan-2015 Jorim Jaggi <jjaggi@google.com> resolve merge conflicts of 87f5369 to master.

Change-Id: I5d1a7aaf48c4bf70f7181508aa46fbbcc2cf7086
2c1c5dd5ef75183101ec22d424b2d11f6b52b61b 12-Jan-2015 Nicolas Prevot <nprevot@google.com> Make documentation for cross-profile intent filters clearer.

Explain why FLAG_MANAGED_CAN_ACCESS_PARENT and FLAG_PARENT_CAN_ACCESS_MANAGED
have these names.
Also do not mention the disambiguation list since there is not always a
disambiguation list shown when resolving cross-profile intent filters.

BUG:18962528

Change-Id: Ibbb9505dcab7cf17d87435eff2cef3e745e95209
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8add57224ffcf73705e507f1b73954e5de15eb88 23-Dec-2014 Esteban Talavera <etalavera@google.com> Remove deprecated version of setProfileOwner that takes packageName

The ComponentName equivalent should be used instead.

Bug: 17654371
Change-Id: I7001e86ab1709b824944148a3c44af5243dacb83
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
743a68fc5f62c645d442aa8b3c9ba7e7d9361785 17-Dec-2014 Nicolas Prevot <nprevot@google.com> am 237637e2: am f2bd50b2: Merge "Fix the doc of addCrossProfileIntentFilter." into lmp-mr1-dev automerge: 47cbcd7

* commit '237637e22ba9d98171f32d2302b9f532120729a9':
Fix the doc of addCrossProfileIntentFilter.
f2bd50b2ec0e5d7a25694170e0dc1363465fd24e 17-Dec-2014 Nicolas Prevot <nprevot@google.com> Merge "Fix the doc of addCrossProfileIntentFilter." into lmp-mr1-dev
fc7b4444629d9166e3fda7b28e96394356bcf56d 17-Dec-2014 Nicolas Prevot <nprevot@google.com> Fix the doc of addCrossProfileIntentFilter.

Mention that cross-profile-intent-filters only work for activity intents.

BUG:18776618

Change-Id: I209d1e38641b4ae84b682a2525e6ddae603a71f9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
77779aa3a5eea2d275c82035b025df85b7702f07 09-Dec-2014 Fyodor Kupolov <fkupolov@google.com> am d483a85e: am fed2812d: am 22afe626: Merge "Added isRemovingAdmin method" into lmp-mr1-dev

* commit 'd483a85e69c3bb83b25473b93806e063b72c9315':
Added isRemovingAdmin method
96fb932666539e2b3be26ef91eb248a9ace5678e 02-Dec-2014 Fyodor Kupolov <fkupolov@google.com> Added isRemovingAdmin method

Added isRemovingAdmin method, so that clients can query if device
admin is currently being removed.

Bug: 17609838
Change-Id: I82547a9eeb228fcf8ac2a6e639ca1a75fa41d161
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ef370c0ca08cfdae1b33edcdb121790bb4eb1844 02-Dec-2014 Paul Crowley <paulcrowley@google.com> am 05f23d97: am f57d9dcb: am fbeeac82: Merge "Add a tag to separate paragraphs in Javadoc" into lmp-mr1-dev

* commit '05f23d974bdfc5fb221f0bfa5bef4e9c915e52d9':
Add a tag to separate paragraphs in Javadoc
2934b266e507ddda7d64201be7850af4589b9c9e 02-Dec-2014 Paul Crowley <paulcrowley@google.com> Add a tag to separate paragraphs in Javadoc

Bug: 18571794
Change-Id: Icb9bdb87415d85cdbf790224e40abbf99a441456
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5ff0e5fb6b339a7dea0cbc344e88673b7a99e593 26-Nov-2014 Paul Crowley <paulcrowley@google.com> am 0d122e26: am ba94fd5e: am 77e25331: Merge "Add flag for wiping factory reset protection data." into lmp-mr1-dev

* commit '0d122e265c52ef25dbad652378b3a5e51a86f041':
Add flag for wiping factory reset protection data.
a7e87acb2416d4212c84fb9c45353dbf6ee15e6a 18-Nov-2014 Paul Crowley <paulcrowley@google.com> Add flag for wiping factory reset protection data.

Bug: 18366448
Change-Id: If8904888a6bf8611d34647e6d65d2347d824dbb3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e1d84dd914ffe29fe821b814924b0a56506dc238 25-Nov-2014 Adrian Roos <roosa@google.com> am 9a4d0257: am 520d20c1: am 702d9e31: Merge "Fix DPM.resetPassword("")" into lmp-mr1-dev

* commit '9a4d0257beadf53c706afbcb4abc76c17a44ff00':
Fix DPM.resetPassword("")
702d9e31b1bcacff975a2b8e0d04160bbd6811ed 24-Nov-2014 Adrian Roos <roosa@google.com> Merge "Fix DPM.resetPassword("")" into lmp-mr1-dev
0d5ccb73785f83b9b74f04078e258cdc21eb4533 12-Sep-2014 Robin Lee <rgl@google.com> Ensure that private key is PKCS#8-encoded

getEncoded() is not requred to return a PKCS#8-encoded result.

Bug: 15065444
Change-Id: I1278ff9ffffe5887f149bae9288a174beed5f86a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3a3d212a51974ccec6100c1e117225291edc83cc 29-Oct-2014 Amith Yamasani <yamasani@google.com> Different messages when wiping user and not device

There are 3 types of users
1. Primary - device will be wiped
2. Managed profile - profile will be removed
3. Secondary user - user will be removed

Show different messages for almost wipe and wipe in each
of these 3 cases.

Bug: 16843155
Change-Id: Icecfe520622773da9e45465bf2217e8ed38b266e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f8f56bce428bb2b89d1d572ccd2d604761dbbce8 20-Nov-2014 Adrian Roos <roosa@google.com> Fix DPM.resetPassword("")

While we're at it, also fix some multi-user issues in
LockPatternUtils.

Bug: 17496766
Change-Id: I8e557ea640fa589817c8f8f818c91463585d5ea7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
735f22850edcb5c2447c37cb96f048de8a742907 19-Nov-2014 Rubin Xu <rubinxu@google.com> Merge "Remove permission check in DevicePolicyManager.isUninstallBlocked()" into lmp-mr1-dev
a97855b784243c00b99dfcb6595164ab4a88d05c 07-Nov-2014 Rubin Xu <rubinxu@google.com> Remove permission check in DevicePolicyManager.isUninstallBlocked()

This is to allow Play to use this API to find out whether a package
is uninstallable due to profile or device owner policy's restriction.

Bug: 17914630
Change-Id: I4ce2963884ecdf3306805f36db80ed1ebf04d88f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5a1442589f3fd3e1eca74e70ca666eb7b3a0f9b2 18-Nov-2014 Sander Alewijnse <salewijnse@google.com> Rename the dont_disable_system_apps constant.

Bug:18414080
Change-Id: Ief9c6ac4346ab0588514f89a659fcb09d10d6574
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f39cec0b068abcf306eb91c304ed2eb76e60f8c0 14-Nov-2014 Sander Alewijnse <salewijnse@google.com> Merge "Add extra to enable device admins to skip removal of system apps." into lmp-mr1-dev
8c4115617833e83253a53fe855ea96bdb39fbe1d 12-Nov-2014 Sander Alewijnse <salewijnse@google.com> Add extra to enable device admins to skip removal of system apps.

Bug:17369849
Change-Id: Ibc1c0f480c436c7075725f79ffaaf92832c1154a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6e33f0fbb57a8afc2184bd9a1798db8bd29e680a 13-Nov-2014 Alexandra Gherghina <alexgherghina@google.com> Merge "Add extra for account migration in the DevicePolicyMamager" into lmp-mr1-dev
aaf2f3e8954d3d5d01953ceb7c8f631db7412e13 13-Nov-2014 Alexandra Gherghina <alexgherghina@google.com> Add extra for account migration in the DevicePolicyMamager

This is in preparation for the implementation CL

Bug: 17716971
Change-Id: I3042b0781f48f3d9e84bfff899507b4b5ca156eb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
52c39a16db077f5017ab20214e60a205e075f2d7 21-Oct-2014 Amith Yamasani <yamasani@google.com> Allow profile owners to set the unknown source setting

This allows work profile MDM to enable unknown sources
even if the user doesn't have UI for it. Installing an
app from an unknown source will still prompt the user
with the package installer dialog, so it's not like the
MDM can now quietly install apps from non-market sources.

Bug: 18316350

Change-Id: Ia8f4fe36f12a258aa888e085acc0b358925f4817
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
541afcd0b761769cc519bcb99c9cd4ebd7c0c42d 07-Nov-2014 Alexandra Gherghina <alexgherghina@google.com> Clarify documentation for DevicePolicyManager

Bug: 17634106
Change-Id: I93e4c10cb942bc8452043f81f460a5db6c3bd0a4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3eed90f39301089a1c16d6e2c0d027b187567cf0 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> Merge "Added the restrictions pending application restrictions key." into lmp-mr1-dev
53d63dcd04da3c1d5187b29f6530c2dcac9d516c 07-Nov-2014 Sander Alewijnse <salewijnse@google.com> Added the restrictions pending application restrictions key.

Bug:17632522
Change-Id: If5a0d0ea1f479b0584fc0b1cff2a179d296d2904
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e303bf443532c2ad756260133f00747bcff11e69 27-Aug-2014 Jim Miller <jaggies@google.com> Update TrustAgentService API after review

This change incorporates API council feedback and enables the
TrustAgent whitelisting API.

It also contains a minor cleanup of DPM's use of UserHandle
to eliminate unnecessary object creation.

Fixes bug 17008504

Change-Id: I63cc50169fde54b34406845818bcaf6aadc1a3db
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
112e053b9a07972d5ceddc3ad19c7252f3963071 29-Oct-2014 Sander Alewijnse <salewijnse@google.com> Change javadoc of setAccountManagementDisabled.

Method can also be called by device owner.

Bug:18166033
Change-Id: I38ab17bdfe9f0c4b33f5257d2f335afe16e84031
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2c3886cb3463ff39c1986c5b85eba79748dd8c24 15-Oct-2014 Amith Yamasani <yamasani@google.com> Merge "Fix admin policies in managed profiles" into lmp-dev
242f4b125939276be866bb0a637b89bfbc5aa880 15-Oct-2014 Amith Yamasani <yamasani@google.com> Fix admin policies in managed profiles

Some of the admin policies are throwing security exceptions in
a managed profile without being documented correctly and others
shouldn't be throwing security exceptions.

Changed setCameraDisabled() to not throw an exception. It now just
prevents work profile apps from using the camera.

Changed wipeData() to allow passing in ERASE_EXTERNAL_STORAGE. In
secondary users/profiles, this is just going to remove the user, so
the flag is harmless.

Updated documentation for setKeyguardDisabledFeatures() and resetPassword()
to indicate that they cannot be called in a managed profile.

Bug: 17987913
Change-Id: I8060be4c2d32bdd4edb46ce543551fabb9c8c983
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9797880808320e3a7bae1f59bc7e0c5a13189e5f 14-Oct-2014 Jeff Sharkey <jsharkey@android.com> Start cross profile intents as caller.

The system should always be using new startActivityAsCaller() when
starting activities on behalf of someone else, to ensure that
security checks are enforced as the original caller.

Bug: 17983737
Change-Id: Ic40816a797cfdb13c0adb48b86ed4ed7d6aae8eb
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8d9f12161823f267179f46825734c188b6c75b09 19-Sep-2014 Amith Yamasani <yamasani@google.com> Merge "Allow primary user profile owner to set device restrictions" into lmp-dev
c34dc7cdeb5cae8ca4c731838aafe90ed4c9a2b8 18-Sep-2014 Amith Yamasani <yamasani@google.com> Allow primary user profile owner to set device restrictions

In addition to device owners, profile owners on the primary user
can also set user restrictions that are necessary to lock down the
user.

This is to enable the case of a profile owner registered after setup
wizard is completed, on the primary user.

Also make managed profile vs. profile wording consistent in the
DevicePolicyManager docs.

Bug: 17555025
Change-Id: Ib9d08b8af34a99b25e11757fa7dc83673a7deb32
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d00cfc51fb5b6e067bf0cd31af670ad4b61d1a7d 18-Sep-2014 Kenny Guy <kennyguy@google.com> Remove suggested key names as its confusing.

Update java doc to not suggest package names
as it confused people into thinking it would
limit access to that package which isn't the
case.

Bug: 15177676
Change-Id: I0736976956d8bb604e5097326c8c4316b3007d64
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2b338a27bef881cf751d1aeb6e42241e47e5e77b 12-Sep-2014 Sander Alewijnse <salewijnse@google.com> Rename email extra.

Bug:17389863
Change-Id: Ie001d71e92e212b83882529ed7c93303b64277c6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
26408ccd8e852d947e58021792bfc3b315e5948d 08-Sep-2014 Bernhard Bauer <bauerb@google.com> Add DevicePolicyManager PrivateKey mgmt

Additional device policy API to install keypairs to the keychain
silently.

Bug: 15065444
Change-Id: Idc25774c9ab1a61080290bebd6f5c4f24e6ee2e0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d86734b4695a92359ed38d6053ed1ce16a470634 11-Sep-2014 Julia Reynolds <juliacr@google.com> Merge "Allow device owners to update LOCATION_MODE." into lmp-dev
df980618a309df46e8569d3b16a6ff4f286e24de 10-Sep-2014 Esteban Talavera <etalavera@google.com> Merge "Update string value for provisioning action and extra" into lmp-dev
e3da790f8c2a8d728ba8febc1334ff44883055d2 20-Aug-2014 Jessica Hummel <jhummel@google.com> Remove unused DEFAULT_MANAGED_PROFILE_NAME extra from DevicePolicyManager.

Change-Id: I6fe96df66a4a78cf2e2455d58bba13051d108fdf
bug:17152955
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ef9c523848e76490270c3e954aab10369c56f602 08-Sep-2014 Esteban Talavera <etalavera@google.com> Update string value for provisioning action and extra

As per API review. This will be submitted in sync with a new version of DMAgent, as the string is hardcoded there.

Bug: 17389863
Change-Id: I3a3d7a9cf05bcb713da8690ceec6af02845a5ff1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
86a967312a45b194f7d2a9745c62e65d8c2e03d3 08-Sep-2014 Nicolas Prevot <nprevot@google.com> Marking two flags as final.

Marking FLAG_PARENT_CAN_ACCESS_MANAGED and FLAG_MANAGED_CAN_ACCESS_PARENT
as final.

BUG:17387998

Change-Id: I1562b8638e7cce5706df4517493d1732f19ece8f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
37f0184d96ca066cb3f2e5aaf8a2ce7eda6ae946 05-Sep-2014 Esteban Talavera <etalavera@google.com> Changed value of EXTRAs to match constant name in code.

As per API review.

Bug: 17389863
Change-Id: I85df4453d3241745b5400a6805d8c8bb4f41e92a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
82735bcb1400cb5ab2da763a236a55927d87ab00 04-Sep-2014 Julia Reynolds <juliacr@google.com> Allow device owners to update LOCATION_MODE.

Bug: 17388933
Change-Id: If3267aa52c2611cf764a19bee019c312f6ebf5d1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aff9f4cb88c8f540bf6b22079107d9424ab63b22 04-Sep-2014 Sander Alewijnse <salewijnse@google.com> Rename email extra to email bundle key.

Bug:17197410
Change-Id: I321bc52cbb73a14869538700204ac7b5aefb3755
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aa924b52e94ac5757ce0ae43f844684808387579 03-Sep-2014 Esteban Talavera <etalavera@google.com> Merge "Pass ComponentName to probing certificate methods" into lmp-dev
f1fe51b9140a855515e257ebb85e6cba88ea89e7 03-Sep-2014 Brian Carlstrom <bdc@google.com> Fix DevicePolicyManager javadoc

Bug: 17126717
Change-Id: Ib1d83a0e2003296ec1e17fa7c43e32c55b044df3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
808f6ef2ac2127ea0ea14e71c9599355b631a617 28-Aug-2014 Esteban Talavera <etalavera@google.com> Pass ComponentName to probing certificate methods

Pass ComponentName and check whether that admin is a profile owner on DPM
get/has certificate methods (requested on the API review).

As per Change I55eec17e01489ab323f8a0e68b11592605a7b740, not keeping track of
which admins installed which certificates for now:

"Having per-admin CA certificates would be a fair bit of work. The only MDMs
we're opening this up to for now are Device and Profile Owners which 100%
manage the profile so will be the only admin.
It seems like if we keep track of "who installed which certs" it'll be a little
pointless because the answer will always be "the ProfileOwner" for every single
one."

Bug: 17005622
Change-Id: I45e9dac5236ab4ed235a341c208ac3cb6aba17da
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
90f14bf53e4c37d0d6d13fbecd48fb88dad06241 20-Aug-2014 Sander Alewijnse <salewijnse@google.com> Add the provisioning extra admin extras bundle.

Enables the MDM app running (as a regular app) in the primary user to pass
through a bundle of data with which to bootstrap the instance of itself
running as profile owner in the managed profile.

Bug:17126717
Change-Id: I28a368d13e33990b16dcd68436902e0a077d5f5d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
24ac55e658f955c330fff4bb143cfc6af37e40bf 27-Aug-2014 Selim Cinek <cinek@google.com> Added a warning when the profile has an owner

Also fixed a bug where a post in the QSFooter
was not always on the mainthread leading to a
crash.

Bug: 17066115
Change-Id: Iea9e1032973058ed5e63e70da4dc0bcf34fa59a3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
729b2a6c2f330c10674bb3fc0c4f2eb57e3d0a43 27-Aug-2014 Esteban Talavera <etalavera@google.com> Renamed getUninstallBlocked to isUninstallBlocked

As per API review.

Bug: 17297103
Change-Id: Icb4ceded317b0df4deb0f5221512541a632e150b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e193455ee20dc6bb44740959d010a8e41f1e64df 27-Aug-2014 Jim Miller <jaggies@google.com> Merge "Hide trust agent whitelisting until new API is ready." into lmp-dev
b1474f4432097cf20c06b471b57359ddd16fe460 27-Aug-2014 Jim Miller <jaggies@google.com> Hide trust agent whitelisting until new API is ready.

Fixes bug 17008504

Change-Id: Ic93d52042e9b6d6f7d634f22aa04642f2da1af32
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
19d431f330bf1d89c92c0971dad5fa8f5950b16d 27-Aug-2014 Julia Reynolds <juliacr@google.com> Merge "Limit the settings profile/device owners can update." into lmp-dev
9ed66da8dfd15001cebe8f7ef453718f41f9904d 26-Aug-2014 Julia Reynolds <juliacr@google.com> Limit the settings profile/device owners can update.

Bug: 16351901
Change-Id: Id33a57ad651b5b7b58de0549eb90d5a1fe5c19c5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ebaf5c70e9889c99a74b7066b20b1c6ccd0da86a 27-Aug-2014 Sander Alewijnse <salewijnse@google.com> Merge "Provide lockdown of date/time device owners." into lmp-dev
d22a6677312d17d23da3b655a2e9b12533dfff76 27-Aug-2014 Jim Miller <jaggies@google.com> Merge "Limit grantTrust() duration to DevicePolicy-imposed limit." into lmp-dev
fbb28dfb9511679bc615c4424c21a901b2dba4cc 26-Aug-2014 Esteban Talavera <etalavera@google.com> Revert API constants to previous value to match hardcoded value in google3 apps

Revert value of DevicePolicyManager constants that were hardcoded in dmagent. See previous change I6f60a43fe23526cfe855d81015feb759cf643926.

Bug: 17275391,17005622
Change-Id: I606b010eb0399f7b34b59c99f96549949410bafc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0ced6272911f440843e9ff8e89b9fafdb49b243b 26-Aug-2014 Sander Alewijnse <salewijnse@google.com> Provide lockdown of date/time device owners.

Fixed two minor issues with the screencapture as well.
Updated documentation and added enforceCrossUserPermission.

Bug:16948504
Change-Id: I9a645dcf480a4a044879ba481bce964d06fe5153
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
76b9b8b0ca537bad6c4da388d77a9e5dee023856 23-Aug-2014 Jim Miller <jaggies@google.com> Limit grantTrust() duration to DevicePolicy-imposed limit.

Fixes bug 17046034

Change-Id: I5c512c2d05e7e0ed81eaf0dcafacc6f62a5c5937
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d4efaac5d54cdb3735b032bb76a5639949f33216 15-Aug-2014 Jim Miller <jaggies@google.com> Update TrustAgentService API after review.

Also documents timebase on related DevicePolicyManager API.

Fixes bugs 16401527 and 17046034

Change-Id: I8ee6d0055ab6f52ec71630344d3232f7875d9c1d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
01e6a6fef1ebcbdf391629197d050c03b415c602 21-Aug-2014 Nicolas Prevot <nprevot@google.com> Merge "Marking the methods to get Profile/Device Owner with @SystemApi." into lmp-dev
465acf3f3f5111b58025d6272f2fd734c0c69390 06-Aug-2014 Nicolas Prevot <nprevot@google.com> Marking the methods to get Profile/Device Owner with @SystemApi.

BUG: 16860239

Change-Id: I60126a8112a57e836cae3bcd9b62ebf50385f5ec
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e4be1bf2bed48afd234ea1f2558c60beffe3fa18 21-Aug-2014 Esteban Talavera <etalavera@google.com> Merge "Set last phrase for constant values of EXTRA_* fields to ALL_CAPS" into lmp-dev
5cef4fa9c189a43ca081d74319f6046e4eba6b8d 21-Aug-2014 Esteban Talavera <etalavera@google.com> Merge "Updated documentation for setScreenCaptureDisabled()" into lmp-dev
2df7d1ef51ebff5228e0cbd7e15a34fce7307390 21-Aug-2014 Esteban Talavera <etalavera@google.com> Merge "Rename PROVISIONING_NFC_MIME_TYPE to MIME_TYPE_PROVISIONING_NFC" into lmp-dev
d5c5c13c8505a27290a2540ff1f64c8753431cb1 20-Aug-2014 Esteban Talavera <etalavera@google.com> Rename get/setBlockUninstall() to get/setUninstallBlocked()

As requested in the API review

Bug: 17005622
Change-Id: I1332ad11e588ab3fa409f2a28222608936cb383e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8c5c37364776266d9d91bb35094a9755707833f7 21-Aug-2014 Esteban Talavera <etalavera@google.com> Merge "Remove setApplicationsHidden" into lmp-dev
d469a0b9cef0cd68e666e64a8ea05c14be8299f0 20-Aug-2014 Esteban Talavera <etalavera@google.com> Set last phrase for constant values of EXTRA_* fields to ALL_CAPS

As requested in the API review.

Bug: 17005622,16486199
Change-Id: I6f60a43fe23526cfe855d81015feb759cf643926
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1aee98fbf3937879c65c523396939ffa054d2fa0 21-Aug-2014 Esteban Talavera <etalavera@google.com> Updated documentation for setScreenCaptureDisabled()

As requested in the API review. Also, removed unused import.

Bug: 17005622
Change-Id: I0bc57411ec34119f64e28eaf27c32a67b45fd66f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b9e468cb9d77abf57473436e29042e1b27d9f70b 21-Aug-2014 Kenny Guy <kennyguy@google.com> Merge "Add apis for whitelisting IMEs and accessibility services." into lmp-dev
115cd65d2a3417b506563e6b2d60c269d69efaef 21-Aug-2014 Esteban Talavera <etalavera@google.com> Remove setApplicationsHidden

As requested in the API review. This version (the one that takes an Intent) was used only in the DeviceAdminSample and some CTS tests.

Bug: 17005622
Change-Id: I9984b22836417ad4d025302f61bd91704e9345a4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fa80a4faa3ab32f61742b684e832126dae8468e7 20-Aug-2014 Kenny Guy <kennyguy@google.com> Add apis for whitelisting IMEs and accessibility services.

Adds apis for device / profile owners to white list
the accessibility and input methods a user can enable.

Bug: 14469005
Change-Id: I921888660d29a5370395db87adf75d4d106660c9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f057f06631e32471cd1ce8f34222251c0537a406 20-Aug-2014 Esteban Talavera <etalavera@google.com> Rename PROVISIONING_NFC_MIME_TYPE to MIME_TYPE_PROVISIONING_NFC

As requested in the API review. References to that field fixed on changes I123a5193d03b313160f934644b02be62b8394649 and Ibf1bb38f481e9e0dd898d662b18a1c54f201f830

Bug: 17005622
Change-Id: I08c53465d98678c06f65eeed5e7e9dcdce7bbcf0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
38f836b972adac73c563692352b345cc09556364 20-Aug-2014 Amith Yamasani <yamasani@google.com> Add a hidden method to query profile owner name for a user

Bug: 17066115
Change-Id: I812a37ea2e7bb6da5aa4c31cb7e37934e5d698fa
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d1d7c022c6f83e836acb74eed1a5a201e495bd85 20-Aug-2014 Amith Yamasani <yamasani@google.com> Rename restrictions API class and method

AbstractRestrictionsProvider -> android.service.restrictions.RestrictionsReceiver
requestPermission->onRequestPermission

Bug: 17006805
Change-Id: I03b1626d6abcd2ad739a55b60b54fdbf9810ceca
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
95d9ad0f79c900db9bca1745100f14d0ec9cc133 18-Aug-2014 Jason Monk <jmonk@google.com> Merge "Fixes to lock task API from API review" into lmp-dev
48aacba761527a529c2b668c8151c7f98ff70524 13-Aug-2014 Jason Monk <jmonk@google.com> Fixes to lock task API from API review

Adding ComponentNames and some splitting/renaming of broadcasts.

Bug: 17005622
Change-Id: I9ece3553310fb20b0c3c3e4032b408e86384363a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7e67871174774973d416c6f25c9f23abad86d3fd 24-Jul-2014 Robin Lee <rgl@google.com> Clean up DevicePolicyManager CA certificate APIs

For consistency all CA-related methods now require the ComponentName
of a DeviceAdminReceiver as the first parameter. Updated javadoc for
this and added in some more detail about the methods in general as
well.

Created two new utility APIs,one to list all installed CAs and one to
remove all installed (user) CAs. Deleted old hasAnyCaCertsInstalled
method because it is now redundant.

@bug 16488006

Change-Id: I55eec17e01489ab323f8a0e68b11592605a7b740
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
976e8bd2017d0263216c62111454438cc0f130e3 17-Jul-2014 Svetoslav <svetoslavganov@google.com> Allow adding widgets from user profiles.

The goal of this change is to enable support for appwidget from
user profiles to the user main profile. A user profile is a user
which is associated as a child of the main user profile. For example,
a user may have a personal (parent) and corporate (child) profile.
The device policy should be able to control whether adding a widget
from a child profile and given packages is allowed. This change
assumes that all packages from managed profiles are white listed.
Another change will add the device policy changes.

Change-Id: I267260b55d74c48b112a29979a9f59eef7a8194e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3f1ddf83a4faba3dec71ed7eebe1835f4685cf60 02-Jul-2014 Zoltan Szatmary-Ban <szatmz@google.com> Add AsUser versions of existing DevicePolicyManager methods

Some API methods on DevicePolicyManager call underlying IDevicePolicyManager methods
that can be parameterised with a user id. DPM however only exposed methods for the current user.
This CL makes it possible to call them with any user id by introducing hidden methods on
DevicePolicyManager.

Bug: 15558397
Change-Id: I1786a64fa7cf5f6590ddd04cbf4527bb159f8795
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
90af6d736550305a9201c57a5e055fb52c999dab 30-Jul-2014 Nicolas Prevot <nprevot@google.com> Fixing a NullPointerException in isProfileOwnerApp.

Fixing a NullPointerException in isProfileOwnerApp of DevicePolicyManager
if there is no profile owner.

BUG: 16673376
Change-Id: I912fcd38343d3c1893313e6335802d26014a2e9d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
bf3a9465483976dcd5692b619b47132c2b95f73e 28-Jul-2014 Amith Yamasani <yamasani@google.com> Set profile owner via an intent

priv apps can request to become a profile owner after setup has
completed. This will pop up a consent dialog (in Settings).

Also, clean up profile owner concept to be a component name.

Change-Id: I5e8532866e8018f61836c4e84fbbadb6150218ae
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
489d2dfc2931dcf51358fd51e4bee6901bff30ac 29-Jul-2014 Adrian Roos <roosa@google.com> Fix checkbuild

Change-Id: I9c3de31af792863b93a29ef81b50e2149b0a2184
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a06d5ca1d96af3555ad4e384994e6321a0c5bb9c 28-Jul-2014 Adrian Roos <roosa@google.com> Make TrustAgentService a SystemApi

Bug: 16401527
Change-Id: I6d19281600bacac7c8a29afc07c39ca1d461d23c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
604e7558ef32098644b2f9456d7743a07ae789dc 19-Jul-2014 Jim Miller <jaggies@google.com> Add new DevicePolicyManager API to allow fine-grained TrustAgent management

This adds a new feature that allows a device admin to specify a
whitelist of features that are allowed for the given admin.

Change-Id: I83f853318efbcf72308532d0a997374f73fa9c10
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
ddbce3263270c3b66c377be2d9f388fc11b23483 28-Jul-2014 Nicolas Prevot <nprevot@google.com> Merge "Storing the app who sets a CrossProfileIntentFilter." into lmp-dev
3f7777fa4f1d392e18bad39edcd4539880c52ff9 24-Jul-2014 Nicolas Prevot <nprevot@google.com> Storing the app who sets a CrossProfileIntentFilter.

When we add a CrossProfileIntentFilter, we store the package and userId of the calling app
inside the CrossProfileIntentFilter.
When an app calls clearCrossProfileIntentFilters, we only remove the filters that the calling app
has set itself.

BUG: 16537557

Change-Id: I6e7bc859383ea66553d9f4230365df8ba27525f3
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
af9f8aed7d3955b0d1c75943290467f39c7a7681 28-Jul-2014 Sander Alewijnse <salewijnse@google.com> Merge "Add http cookie header key as a provisioning extra." into lmp-dev
681bce94df324ef84a804131691b6c33119197c4 24-Jul-2014 Sander Alewijnse <salewijnse@google.com> Add http cookie header key as a provisioning extra.

Change-Id: Id07ab52f265536b9790f4eb6ae314875e81a61d7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b5deda7382effe9b6dc5cc7d96d68f950c2fc88b 24-Jul-2014 Justin Morey <jmorey@google.com> Fix build

Change-Id: I8790b274864610b7e00d7ea12efe96b3b826301f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
80440cc853611e77268d8c67db2279c10b2e076e 24-Jul-2014 Justin Morey <jmorey@google.com> Expose setActiveProfileOwner() using @SystemApi

Change-Id: I1607fa90e76da495ede48f01ad250baae60108af
(cherry picked from commit 85db24136eefb01341760208541563aba05ce82e)
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d2a1eec400128f39e1b223a720a88dbd395f3e6e 09-Jul-2014 Sander Alewijnse <salewijnse@google.com> Add Device Policy API to disable screen capture.

WindowManager will set secure flag on SurfaceControl for
all windows of a flagged user to prevent screen capture.
API is consistent with the camera disable API.

Change-Id: Ib180f67f1ad827b6f4aca2af615274256cce58f4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
e5bcff624fb58b6f95be8ddff7f5b6b3bf5d19c7 20-Jul-2014 Amith Yamasani <yamasani@google.com> Rename setApplicationBlocked to setApplicationHidden

This corrects the expected behavior of the app state. Hidden apps
can be installed by the store to be brought out of hidden state.

Bug: 16191518
Change-Id: Id128ce971ceee99ba1dea14ba07ce03bd8d77335
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
570002ffd477271c3c9a8457fd67ed3711615daa 19-Jul-2014 Amith Yamasani <yamasani@google.com> Add a hidden API to expose cross profile caller id check

To be used by telephony/contacts.

Change-Id: If8e06c20a708ce5e8f7d717d8758c19a78efa46d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
06e345089a0425c6cd5a5596835113fb229b7d41 17-Jul-2014 Jim Miller <jaggies@google.com> Add DevicePolicyManager flag for fingerprint.

Change-Id: Icb3e4b98d97487179acefabc7a3b747d3d0fa23a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c8fa3ae2ce238843496d7aa3f1c4042bb9bb98b4 17-Jul-2014 Adam Connors <adamconnors@google.com> Merge "Create DPM APIs for cross profile callerId" into lmp-dev
210fe21e95cfff98734f5b849b205cdcb0706948 17-Jul-2014 Adam Connors <adamconnors@google.com> Create DPM APIs for cross profile callerId

Contact information in the managed profile is shown
in the incoming call UI unless blocked using this API.

TODO: Actually plumb this into the caller-id logic.

Bug: 16301261
Change-Id: If03adc907d9558baa0a45a1833b857206b7bf96a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
999d394adee533c55fce38bd632ffd4f1af91362 03-Jul-2014 Alexandra Gherghina <alexgherghina@google.com> Ads per-user APIs to manage accounts through the AccountManager

Bug: 16056552
Bug: 14642886
Change-Id: I17ff6c2515285e63c84cecf2f861d10666c393c5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
655be2a98ea6285fc33aec4b223e90c2620927f1 14-Jul-2014 Adam Connors <adamconnors@google.com> Revert "Remove enableSystemApp methods."

We need to go back to uninstalling system apps so we can
re-install non-default system applications through Play.

This reverts commit e3dbcd138c07f2d32ac84229d0a49052cc18d424.

Change-Id: I0a7af094614c4a10800971c82e10571f7312e079
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c8c8425b51a4f68fae993e68b357679ca27d155d 14-Jul-2014 Amith Yamasani <yamasani@google.com> App restrictions schema and parser

Documented the restrictions schema in RestrictionsManager docs.
Added a parser to read the meta-data and XML file on the device.
Added more types and methods in RestrictionEntry to accomodate some
new types and construction modes.
Added a styleable for restriction attributes.

Slight tweak to permission response params.

Bug: 14582645
Change-Id: I193d1162741d110c100831cab33b48e2baf7426c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f6e2fcc2eaf5e650237d3c6d79a2de49d2d4111e 10-Jul-2014 Amith Yamasani <yamasani@google.com> Improvements to Restrictions API

Convert restrictions provider to a service instead of a receiver.
Add a way to get pending responses from restrictions provider.
Add AbstractRestrictionsProvider.
Add a callback API for responses.

Removed some constants in RestrictionsManager.
Added new constants for errors and error codes.
Much improved javadocs.

Bug: 16176009

Change-Id: I838a50fabc80b94b632294b3a55cd5d8092acf55
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
582d9111d76632027fed7af10d05d4b44df16c0c 10-Jul-2014 Jason Monk <jmonk@google.com> Add API for device owner to switch users

Once verified that caller is device owner just calls through to
the activity manager and acts like that call.

Change-Id: I34023313cd6742b73d2105655ec6b631879aa37a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
85516d028b2dcc7ebc09f4a68085836aa26191d5 01-Feb-2014 Jim Miller <jaggies@google.com> Add new "pin complex" type to supported keyguard PINs

This adds a feature to allow DevicePolicyAdmins to prevent using
simple PINs, which are defined as those containing more than 3
repeated values. Examples include '1234', '2468', '1111', '9876', etc.

Bug 12081139

Change-Id: I4ebe1c76a48087dcd7c878e9bd79a4e3ee2a27fe
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
98acdc8007a0e168a018f90b4e03d4dd0b2ccc9b 05-Jul-2014 Nick Kralevich <nnk@google.com> am 3cdc06bb: am dbb32da8: am c9eff23b: Merge "Fix typo in DevicePolicyManager documentation"

* commit '3cdc06bb370a2f29d334e6916969e954875d51fe':
Fix typo in DevicePolicyManager documentation
c9eff23b443f26fb8c4873a6ecb61eded0564163 05-Jul-2014 Nick Kralevich <nnk@google.com> Merge "Fix typo in DevicePolicyManager documentation"
c13053bf1c05b980421611487ce67677c08db299 29-May-2014 Kenny Guy <kennyguy@google.com> Add package state to block uninstall.

Add package state to allow profile or device
owners to block uninstall of packages.
Add API to DevicePolicyManager to set/get the
state.

Bug: 14127299
Change-Id: I03528819850b42df7bafa7747bb9e4558d20c4e6
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
edb7ae704b7a37b3665bc96165ba8aa9ff86b375 26-Jun-2014 Jessica Hummel <jhummel@google.com> Remove unused action from DevicePolicyManager.

This is part of a simplification to cut out one communication with mdm apps.

Change-Id: I7d0067928c20387dca8fcc45a7bc48d9d158fa2c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1c7c319bb89b9988bfd12afc3e8d89449fd163fc 26-Jun-2014 Jason Monk <jmonk@google.com> User restriction for disallowing window creation

Block any types of windows that could by used by apps to create
views on top of a locked app. This can be used by device admins
in conjunction with lock task mode.

Added a way for system (and priv apps) to bypass user restrictions
for specified op codes.

Bug: 15279535
Change-Id: I2381530ef6226a5bb32a99bb4030baafb39bf564
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aba4f1b54a2b7b2aefc840dcb3b46459aa1bde23 01-Jul-2014 Amith Yamasani <yamasani@google.com> Add a method to set a profile owner and active admin at once

This can be used by system apps to register a profile owner during setup

Bug: 15922051
Change-Id: Iee1b5adeb47d7e40ab36df18e3a057d8ee430f46
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a55fc9920117eabae7c0bb7339d8d9f5d3f5a9c1 30-Jun-2014 Jessica Hummel <jhummel@google.com> Merge "Provide api to set the managed profile name."
1333ea1ed7a95eb9e1be43c20a0c48e901654cac 23-Jun-2014 Jessica Hummel <jhummel@google.com> Provide api to set the managed profile name.

Instead of sending the profile name in the provisioning intent
the mdm should set the profile name after provisioning has completed.
This allows us to simplify the provisioning flow and the mdm can
change the name of the profile later on if required.

Change-Id: I821ef2300eae74e89872152ae1c89ac3ecbb82e7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1cc4ecc3e2c64ade5078581b039e1b068c6ed0ed 23-Jun-2014 Sander Alewijnse <salewijnse@google.com> Add public constants for Device Owner Provisioning.

Change-Id: I46dca4e31ab256273eb810f57083f31541815735
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c5185f2bf1bf15ea0cfd72d30167fcbb1d61d437 24-Jun-2014 Jason Monk <jmonk@google.com> The profile owner shouldn't control lock task

Since managed profiles are started on bootup, the managed profile
would be allowed to set an app (possibly itself) as a lock task
app and then run itself on bootup and constantly control the
device. This privelege should be restricted to device owners.

Change-Id: I4a93aabd6054cbe75076ef0517fce03ffa74dc93
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
aab72f3b0ab740e12b4a2576a99852081529feb5 19-Jun-2014 Robin Lee <rgl@google.com> Merge "Revert "Revert "Publish DevicePolicyManager CA certificate APIs"""
306fe08ce2b06671336e67a87afaa0851f0105eb 19-Jun-2014 Robin Lee <rgl@google.com> Revert "Revert "Publish DevicePolicyManager CA certificate APIs""

This reverts commit 792b270dbdc980cfe04e8d461bf00a1f45b5e936.

Change-Id: I18c7e0eca39868230cd8e4f4bbeb3c44ff9e8b78
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2b5e917026fe4e6dec8712ee24bdffee8d62ab33 18-Jun-2014 Robin Lee <rgl@google.com> Revert "Publish DevicePolicyManager CA certificate APIs"

This reverts commit 5260bf69946563dc47c17e7441b352adfce384c5.

Change-Id: I5e44fdac8a7375576b25171f58e31a1fa0e3c569
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7ccf51dd796cc4c2bfcdf3d3a17b9987a4c8461d 18-Jun-2014 Jason Monk <jmonk@google.com> Merge "Change clearDeviceOwnerApp to take a package"
94d2cf9725ba21a60e28fc9dadb3b65bac873e12 18-Jun-2014 Jason Monk <jmonk@google.com> Change clearDeviceOwnerApp to take a package

If the caller is sharing uid, then the package from getPackage()
may not be the desired one. This also matches better with the
other device owner calls.

Change-Id: I14f2ec4bff0717273f626072dabad0d2c76068a5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d7b8621bde44857ebb07130693a00f5f777887d4 16-Jun-2014 Jason Monk <jmonk@google.com> Change lock-task DPM authorization to packages

Switch the DPM lock-task authorization to be controlled by a package
rather than a component.

Change-Id: Ife9bed068f31ff2449b4451ab69d3586a3f09d89
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
837304f6f6ae37dc475fa6e0e620f1c2321f2e11 11-Jun-2014 Robin Lee <rgl@google.com> Publish DevicePolicyManager CA certificate APIs

Exposes these methods:
- hasCaCertInstalled
- hasAnyCaCertsInstalled
- installCaCert
- uninstallCaCert

Allows device and profile owners to perform some certificate management
including querying for and enabling/disabling specific CA certificates.

Change-Id: I4aa8a1a8601b234e30acde99dfa382e04cb62495
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0cc9c1e9d3d3121d961cf184de73578bc6708879 11-Jun-2014 Nicolas Prevot <nprevot@google.com> Merge "Changing the value of the user consent extra in DevicePolicyManager."
4e81913a66c98bfd9939376640b89015a23580a1 12-Jun-2014 Jason Monk <jmonk@google.com> Merge "Allow device owner to configure secondary users"
03978a40b3a4c268329ae733eff8dfffd92f6e09 10-Jun-2014 Jason Monk <jmonk@google.com> Allow device owner to configure secondary users

Currently the device owner can create secondary users, but unless
it is a system app it will not be installed and will not be able
to pass data easily from the code that creates the user and any
code running on that user.

This allows the device owner to install itself while creating a
user and start up a service to configure that user. createUser
takes an bundle so that the device owner can pass across any
initial setup data it needs to, this bundle will be sent to
the admin receiver in onEnable.

Change-Id: Ic1f8565dd2a7bd85363527cf68b0ecd4dc9c3636
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fb8a98d3f30487b2ecb69693c5b82061490cf8ad 10-Jun-2014 Nicolas Prevot <nprevot@google.com> Changing the value of the user consent extra in DevicePolicyManager.

Renaming android.app.action.USER_HAS_CONSENTED to
android.app.action.ACTION_PROVISIONING_USER_HAS_CONSENTED

Change-Id: I65a3b8f1ec29a0bed5b61ff9e7587195e1c96cec
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
4a21b25fad62e4f19d13ba814263841c931f56ef 04-Jun-2014 Julia Reynolds <juliacr@google.com> Allow profile and device owners to change and get the master volume mute state.

Also protect muting master volume with op code OP_AUDIO_MASTER_VOLUME.
Bug: 13585918
Change-Id: I91fe7ee60cd291cca15966b3127c0bb8a4828f6a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f89fa8337466be97e40c3ae3cc37704e3f666b5e 09-Jun-2014 Jessica Hummel <jhummel@google.com> Merge "Update documentation so it meets api requirements"
e8b8f99dde2aea3958d3169627e1fe2b02d8627b 09-Jun-2014 Nicolas Prevot <nprevot@google.com> Merge "Updating documentation for the flags of addCrossProfileIntentFilter"
9da603973bcde2fb4566d6cc1bcb0f764fd383f4 21-May-2014 Jessica Hummel <jhummel@google.com> Update documentation so it meets api requirements

Change-Id: Ice52dc3d5ecca77f81d3df1b43179c94aece6fef
bug:15023443
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
41d926e3e4dc5b6a7f21f56168d222df562a5ebd 09-Jun-2014 Nicolas Prevot <nprevot@google.com> Updating documentation for the flags of addCrossProfileIntentFilter

Change-Id: I32ed07aecdc8009cbb5708777da5085feabfd4ef
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b0dced8173a9a930bc0ea2a7a669a907aaffd735 06-Jun-2014 Jason Monk <jmonk@google.com> Add an API to clear the device owner.

Only the device owner will be able to clear itself.

Change-Id: Ie3231467d92e8c5d22ec51256177793f34110432
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
03bc9918345a977e9c45796bf3bb5bf9a3b87d25 13-May-2014 Jason Monk <jmonk@google.com> Add device-owner based setting of global proxy.

Re-hide the setGlobalProxy on the ConnectivityManager as it requires
CONNECTIVITY_INTERNAL. Instead add a function to the DevicePolicyManager
to set the global proxy, that can only be called by the device owner.

Change-Id: I9ffb2cc4f30a6dc9b868d86f056e1fbd512d8dfc
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
07ac20bb2c763409cfc2f3b33ca692181fd1fb1a 27-May-2014 Nicolas Prevot <nprevot@google.com> Adding an extra and an action to notify the mdm to start the provisioning.

Adding EXTRA_PROVISIONING_EMAIL_ADDRESS and ACTION_START_PROVISIONING to DevicePolicyManager.

BUG: 15157562

Change-Id: Ic3ecc6b0a501e1df9a5f803a44347dd024a7a07c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1b8737ee18f5d80adda41eafca6143a046a47a13 04-Jun-2014 Sander Alewijnse <salewijnse@google.com> Merge "Remove enableSystemApp() and enableSystemAppWithInten()."
3742ec394f2603af465dcaa5909916b1065243c3 27-May-2014 Nicolas Prevot <nprevot@google.com> Adding user consent extras to DevicePolicyManager.

Adding ACTION_PROVISIONING_USER_HAS_CONSENTED and EXTRA_PROVISIONING_TOKEN to DevicePolicyManager.
They can be used to tell ManagedProvisioning to skip user consent.

Change-Id: I5ef8ab2a14969bb29a2ee3dbdce5ca3225e0759a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f20d640fa2b155a971ddfe0965fc803a73b5e53c 25-May-2014 Amith Yamasani <yamasani@google.com> Restrictions Manager

Mechanism to register a provider for requesting an
administrator to respond to permission requests.

Request format and response format constants.

Description of manifest template for static restrictions.
Int type introduced in RestrictionEntry.

Needs more javadoc and better description of manifest templates,
including specifying the XML attributes.

Change-Id: I5a654d364e98379fc60f73db2e06bf9a8310263d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
866896df168d1382732c97e49617ab2f2995d376 27-May-2014 Sander Alewijnse <salewijnse@google.com> Remove enableSystemApp() and enableSystemAppWithInten().

Use setApplicationBlocked() and setApplicationsBlocked() instead.

Change-Id: I3d323d704db0a45e936f63675821707b4fddc48b
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8194899071e0a84c95ef10614bd1b9485b48f589 16-May-2014 Nicolas Prevot <nprevot@google.com> Rename code related to cross-profile intents.

For example, replace ForwardingIntentFilter by CrossProfileIntentFilter

Bug: 15023443

Change-Id: Iee8cdf578817ef9956bcdece803a49b0d07b67f7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1e958398232cb11935f5341d71df52c5455c620f 16-May-2014 Julia Reynolds <juliacr@google.com> Create deviceowner gated APIs for creating and removing users in devicepolicymanager.

This will allow DMAgent to manage users for EDU's cart model user case.
Bug: 15015887

Change-Id: I1eadf1701cb75fc4b50eb1a0df1525eff818286e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
37f4e44ae614987c5ed953a1829c7181bb775e1f 21-May-2014 Julia Reynolds <juliacr@google.com> Merge "Add Device/Profile Owner gated apis for setting/getting blocked packages."
966881e8951f9bb297689745dcaecfdc13432656 14-May-2014 Julia Reynolds <juliacr@google.com> Add Device/Profile Owner gated apis for setting/getting blocked packages.

DMAgent currently needs to live in /system/priv-app in order to
(among other things) set and get blocked packages. These APIs will
get us closer to being able to move DMAgent out of priv-app.
Bug: 14945334

Change-Id: I108e2013c67409dca554acf78e3a710745900706
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
da551653219092306fc7e1ce5743ab40683cee6f 14-May-2014 Julia Reynolds <juliacr@google.com> Allow device/profile owners to update settings.

Device owners can update Settings.Secure and Settings.Global settings.
Profile owners can update Settings.Secure settings.

DMAgent currently needs to live in /system/priv-app in order to
(among other things) update global and secure settings. This change will
get us closer to being able to move DMAgent out of priv-app.
Bug: 14965414

Change-Id: If2cc3a56de91bffde33b838ab8ecea2c32412803
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
57dacb7eb009130264972468cda2876e58999c2f 13-May-2014 Sander Alewijnse <salewijnse@google.com> Merge "Group account management methods and add some comments."
91da58ded2e7c0dd3d045244cc78eb0d788736a7 10-Apr-2014 Jessica Hummel <jhummel@google.com> Allow setting password restrictions from a managed profile.

A managed profile will now share password settings with its parent.

- the current password is always stored in the parent
- admins of profiles are notified if that password changes
- checks for password quality now take the requirements of admins on
the parent and its profiles into account

Todo:

- Currently KeyguardSecurityContainer wipes the whole device when
the maximum fails has been reached on any profile.
We need to limit the wipe to the profile for which the fails exceeded
the maximum number.
- Intents with ACTION_SET_NEW_PASSWORD need to be forwarded to the parent
of the profile when sent from a managed profile

Change-Id: I8532c59f753f8d9c61200f553f275214ad90276e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
511e0d8323d2d2ed341ba40b15bc646e134ac03b 24-Mar-2014 justinzhang <justinzhang@google.com> DevicePolicyManager Authentication for Lock Task

Here we let DevicePolicyManager keep a list of tasks that are
allowed to start the lock task mode. This list can only be set by
a device owner app. The ActivityManager will call
DevicePolicyManager to check whether a given task can start the
lock task mode or not.

Change-Id: I650fdae43fc35bf9fd63452283f4e2bbadd11551
Bug: 14611303
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
650c3341be05e268bb247e6a3f5b20afecf2e712 08-May-2014 Sander Alewijnse <salewijnse@google.com> Group account management methods and add some comments.

Change-Id: I994142b557d21fbf75fc500d5ed1da9eceef6599
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
5c02db60be02cc0c4798ea6d9c2b0e6cf972c158 07-May-2014 Sander Alewijnse <salewijnse@google.com> Add API to disable account management for certain types
of accounts.

The account types with disabled account management are stored in a
blacklist in the active admin object, editable by profile owners.

Change-Id: I57dc5f709ad79674fa28dd006969283585daea24
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
007bbc0ed332a5fb40fbca294870adf854c200dd 07-May-2014 Amith Yamasani <yamasani@google.com> Fix javadoc typo

Use @return, not @returns

Change-Id: I6c8fab2d236cf9c68c79090d3830bc3e01c8aa6f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
010cfd458121034075c7439020ffef4eedbcc0fc 16-Apr-2014 Adam Connors <adamconnors@google.com> Add enableSystemApp methods to DevicePolicyManager

These methods allow profile or device owners to enable
systems apps pre-installed in the primary user in the
managed profile. Apps can be specified by either package
name or intent.

Bug: 13587051

Change-Id: Ifcbc68c139308506b6c18cf3c0ea62b8026ff75f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c79586ede6dcd6a167bc8360f058cb5cc655b33d 06-May-2014 Nicolas Prevot <nprevot@google.com> Cleaning code related to the forwarding intent filters.

Checking for INTERACT_ACROSS_USERS_FULL
Adding equivalent methods in the PackageManager

Change-Id: Iaa1328fa666613a78e67ca669ea045144275e895
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3c4d9c56db5b24699956de0a5a841196185363cc 01-May-2014 Alexandra Gherghina <alexgherghina@google.com> Merge "Adds an enabled state in UserInfo instead of DevicePolicyManager"
df35d570ed25257c6782e632ab1bae5e1603855a 09-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Adds an enabled state in UserInfo instead of DevicePolicyManager

Bug: 14377459
Change-Id: Ib4ec43d87da96c3dddaf9b7ae1796f261863a182
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
10fa67c77e11699391e27975fc2d276a0b8c7cbb 24-Mar-2014 Nicolas Prevot <nprevot@google.com> Introduce forwarding intents across profiles.

The package manager service maintains, for some user ids, a list of forwarding intent filters.
A forwarding intent filter is an intent filter with a destination (a user id).
If an intent matches the forwarding intent filter, then activities in the destination can also respond to the intent.

When the package manager service is asked for components that resolve an intent:
If the intent matches the forwarding intent filter, and at least one activity in the destination user can respond to the intent:
The package manager service also returns the IntentForwarderActivity.
This activity will forward the intent to the destination.

Change-Id: Id8957de3e4a4fdbc1e0dea073eadb45e04ef985a
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
df2258be5bd9df4f9a31c4389e8b07b996d26f0b 28-Apr-2014 Jim Miller <jaggies@google.com> Fix doc build.

We probably don't need to deprecate this constant. It can still be used
by partner devices if they choose to continue to support widgets.

Change-Id: Ie8c33446e0c5c32d96ed0670df1772adedf6a5de
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
66fbe3dc81f2786b2be9afa122038228a31e2cdb 26-Apr-2014 Jim Miller <jaggies@google.com> Merge "Add new DevicePolicyManager disable flags for keyguard."
50e62183d4aed2fb8e189196c1809e333e71dd89 24-Apr-2014 Jim Miller <jaggies@google.com> Add new DevicePolicyManager disable flags for keyguard.

- KEYGUARD_DISABLE_SECURE_NOTIFICATIONS
- KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS
- KEYGUARD_DISABLE_TRUST_AGENTS

Change-Id: I4ed2b9cef78b497d87bb719c57fabdad94c18e82
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
be46532c9fbebf3ab6498c1b78013a33f620cd31 24-Apr-2014 Amith Yamasani <yamasani@google.com> Allow profile owners to set user restrictions

Pass the setting along to UserManager.

Fixes a security exception when fetching the profile's enabled state.

Change-Id: If71698cf32c52cce1158cf2027443a339bc58488
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
385124d8cee38dee00d4fac31e8fbe46fb30565b 03-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Modify getUserProfiles to return only enabled profiles:

Add a new enabled state for a managed profile.
Expose that as a new API on DevicePolicyManager.
Set the new state when enabling the profile.
Return only enabled profiles from the user manager.

Bug: 13755441
Bug: 13755091
Change-Id: I2907b182e19b3562592da688b3f68ef5f4088557
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
66e5d96cf9e689148b202787bdc269519c4b6f8f 09-Apr-2014 Robin Lee <rgl@google.com> Allow ProfileOwner apps to manage app restrictions

Simple wrapper around the UserManager.{get|set}ApplicationRestrictions
APIs. Also added a new Intent to signal to running apps that the set
of restrictions has changed since startup.

Change-Id: Ifd108108a73f87325b499d9de2e1b2aacc59b264
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
512675b07d1643f018e84d66e4ee8b641d3e191c 02-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Add new call to DevicePolicyManager to enable a profile.

Bug: 13755091
Change-Id: Idb6975431f842ededf78966c578b0533e6f186af
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
6d36b60bebe77b88e0aff6cefb027f8c6f4716be 04-Apr-2014 Jessica Hummel <jhummel@google.com> Allow setting the active admin across users.

This is required so that provisioning can call it from the primary user when it sets up the mdm on the managed profile.

Change-Id: I185af168754aa4aeae61f1d4522c1794681cb400
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
03dd22079cc43ae0a008e5080a45fe665d29a69c 13-Mar-2014 Jessica Hummel <jhummel@google.com> Standardize the provisioning intent action.

Change-Id: Iea7f8827cf4b52e2e97e8675687412108dd917e4
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f72078bdc54d1ecd286c21d8460e522582d64627 06-Mar-2014 Jessica Hummel <jhummel@google.com> Move the provisioning intents to DevicePolicyManager.

Change-Id: Ibde867b193e64c1fda8d9c84b0d1be36a1592035
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
9070484e179b2215ea595c8f3f1f69dbc0dc149d 01-Mar-2014 Yuhao Zheng <yuhaozheng@google.com> Return detailed reason of invalid proxy settings

Make Proxy.validate() return valid/invalid int code, instead of throwing
exceptions. If invalid, detailed reason code is returned (currently for
Settings UI use).

bug: 13248097
Change-Id: Ic68d03f666f1cd63667afc311de7dc370d233901
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
875e2101d71afe7e4acf10b061c942fbf7294775 24-Feb-2014 Torne (Richard Coles) <torne@google.com> Fix missing # in method name in javadoc.

Fix doc generation.

Change-Id: I2e333a7224eeaff7a870fedc7f7a4eb113d1fe2f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
f475ca33d9232785710aaa438f17915029dfa83b 17-Feb-2014 Sander Alewijnse <salewijnse@google.com> Enables a profile owner or device owner to set and clear default intent handler activities.

Those intent handlers are persistent preferences. They will remain the default intent
handler even if the set of potential event handlers for the intent filter changes
and if the intent preferences are reset.

Change-Id: Id0cfae46f93c10d89e441f272096a205ec518dd0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
661ec4710b30516a2c7a1101ba65ecac109af619 11-Feb-2014 Adam Connors <adamconnors@google.com> Change API for setProfileOwner to require userId

Previously the userId of the current process used but it
makes the provisioning process cleaner to be able to pass
it in explicitly.

Change-Id: I670c4cf3638f1340f6d0bf856c3e01045df8c29e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
776c555d954d9494069f786785877c08add27327 09-Jan-2014 Adam Connors <adamconnors@google.com> Extend DeviceOwner concept to accommodate ProfileOwners

ProfileOwners, like DeviceOwners, are Device Admins that have
additional priviledges. ProfileOwners however are scoped per
user.

Change-Id: I1e22c85878e0672121e6ebbe97fca38591f992b2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2450a0e669f2edf7e35a5db420bdd445aa9f73e7 20-Sep-2013 Paul Quei <paulquei@gmail.com> Fix typo in DevicePolicyManager documentation

Typo in DevicePolicyManager documentation
See: http://code.google.com/p/android/issues/detail?id=60235

Change-Id: Ic120297cfdc46ec49f870e0750ec831ba6362399
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
0469f41010d8001dba5e09606bb631b1d3313021 05-Sep-2013 Maggie Benthall <mbenthall@google.com> CA cert monitoring: add notifications and actions for dialog

In DevicePolicyManagementService, on boot and when certs are installed,
post notification to tell the user that their traffic may be
monitored.
Have QuickSettings use the MonitoringCertInfoActivity instead
of building the dialog itself.

Bug: 10633199

Change-Id: Ie4b97295a9fc25867c87872feccdb17f4bea071d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
da51e68e582ffa017543982297c831680d201a91 09-Aug-2013 Maggie Benthall <mbenthall@google.com> Add methods for managing CAs to DevicePolicyManager(Service)

Guard install/uninstall by enforcing that the caller have the new system-only permission MANAGE_CA_CERTIFICATES.
Also include API methods for asking whether there are any User CA certs
installed, or if one by a particular name is installed in the keystore.

CA certs will be installed via KeyChain into the TrustedCertificateStore.

Bug: 8232670

Change-Id: I17b47a452e72eb4fe556dc6db823a46c6e854be8
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
334c7e32d494baf3bf0ae371d6b5949c80368982 08-Aug-2013 Geoffrey Borggaard <geoffreyb@google.com> Add a name to the DeviceOwner

We will need to display the name of the device owner (the human
readable name of the institution) to the user.
"This device is managed by google.com"

Change-Id: Ic33b6530c19cb14a118245692697205de3911a58
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3b458ad9ee5f2d6b7cf28a13bc29123cdf540763 19-Apr-2013 Amith Yamasani <yamasani@google.com> Improve API and documentation

API for querying accounts visible to a specific package.

Improve API and docs for device owner.

Bug: 8657158
Change-Id: I01b8701534f64b383391508a49ae93ed21f22ae0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
71e6c697e54a43d357cc25d87a446d140f17396a 25-Mar-2013 Amith Yamasani <yamasani@google.com> Device Owner, a special kind of device admin

A Device Owner cannot be uninstalled and is available to all users. It must
be registered before the device_provisioned flag is set.

Device admins can be disabled until used, but visible to device policy
manager, so that users wont be bothered with update requests.

Opened up a few related APIs for use by a system-installed Device Owner.

Change-Id: I847b5fe68c0f724863f778a67602b5bddc79d8e5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
40a419c2a5f83a00a2e6978ded4e8fcf634b7b46 08-Nov-2012 Jean-Baptiste Queru <jbq@google.com> Merge commit '58ed5d748c0b9b64845975ef5844ad313de7c3f6' into HEAD
58ed5d748c0b9b64845975ef5844ad313de7c3f6 07-Nov-2012 Kenny Root <kroot@google.com> am 768d9e1a: Merge "Correct executable bit for source files"

* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
Correct executable bit for source files
3a084af2e90849aaa8beb3a610189e3399c63ea0 07-Nov-2012 Kenny Root <kroot@google.com> Correct executable bit for source files

Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3520774a91aee6fd59200aef4238efbdb580202a 02-Nov-2012 Jim Miller <jaggies@google.com> Update DevicePolicyManager documentation with new keyguard flags

Change-Id: Idb1fa306a5706ba5b9543d7dff5450a4af5c394f
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
48b9b0d068844af9eb37c215484831c4d6b831b0 20-Sep-2012 Jim Miller <jaggies@google.com> Make DPM API for disabling keyguard widgets more generic

This change renames the widget-specific API to be more generic
to allow further disabling of keyguard-specific customizations
in the future. Currently only allows disabling widgets and the
secure camera but can now easily be extended to disable other
features we add.

Fixes bug: 7021368

Change-Id: I3934cc2e7c64e0c6d511efb86980fc38a849708d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
599dd7ce9adf8ca067cefb0b191a5ac20ec35a79 15-Sep-2012 Amith Yamasani <yamasani@google.com> DevicePolicyManager per user

Bug: 7136483

Store device policy information for each user and apply them when user switches.

Global proxy can only be controlled by owner.
Camera restriction applies to all users, if any one has an admin that disables it.
Storage encryption can only be controlled by owner, although other users can query the state.
Wipe data will only remove the user if non-zero, wipe the device, if zero.

Change-Id: I359be46c1bc3828fd13d4be3228f11495081c8f2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
b8ec470617590fa2025db869e8e80dcce8eaec23 01-Sep-2012 Jim Miller <jaggies@google.com> Update DevicePolicyManager with ability to disable keyguard widgets

Change-Id: I5876e9e180b2a995aaa355fbbb2b67cebb86104d
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
fd63c85742f4b12065418d48ae10be4bb12468f5 25-May-2012 Jean-Baptiste Queru <jbq@google.com> Merge "Wipe the user data out in any case."
f535cb04f08575d29118fab0342b1e6274091734 15-Feb-2012 Masanori Ogino <ogino.masanori@sharp.co.jp> Wipe the user data out in any case.

When the external storage is not mounted, the android system won't
wipe out the user data (i.e. "/data") if wipeData() is called with
the flag WIPE_EXTERNAL_STORAGE.

We think that the user data should be wiped out in any options and
also wipeData(int) method currently supports also for a external
storage. So we will also change the API reference comment.

If we should care about backward compatibility of this method behavior
with the option WIPE_EXTERNAL_STORAGE, then we would add an another
bitmask something like a ALWAYS_RESET.

Change-Id: Id7bf673c722bacc0480d32e46553b9a348513879
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3aef8e1d1b2f0b87d470bcccf37ba4ebb6560c45 20-Dec-2011 Joe Fernandez <joefernandez@google.com> docs: Add developer guide cross-references, Project ACRE, round 4

Change-Id: I1b43414aaec8ea217b39a0d780c80a25409d0991
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3e5d3fd7e172ee85a7bb67baa01acbc3549dfdb6 03-Sep-2011 Jim Miller <jaggies@google.com> Fix 5185505: Update DevicePolicyManager to support weak biometric security.

Change-Id: If0fa49908a10d8057b9398112d47eb968cc77060
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
2447edd85baac3225a12b868ef40f76cfdc6ec11 10-May-2011 Ben Komalo <benkomalo@google.com> New device policy to disable camera.

This introduces a new policy that a DeviceAdmin can use to disable _all_
cameras on the device. A separate CL will be made on the media side to
watch this policy bit and act accordingly.

Bug: 4185303
Change-Id: I700cfc4a8317bb74087ccae39346d74467fc58b2
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
50c294f21b3348010c3f91c5a998d54e1e45d2e4 08-Mar-2011 Andy Stadler <stadler@google.com> Clarify rules about encryption of emulated storage.

Bug: 3351426
Change-Id: I3a8fcd369862f3eab1781699108e29fe7ab474a0
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
91fd9a97727b6aa0b669b92bb0f7ef1db884dd26 17-Feb-2011 Jim Miller <jaggies@google.com> Merge "Fix 3197205: Minor edits to device policy admin strings and documentation"
6b85768058b065cc682757a366abc828c9ca727a 17-Feb-2011 Jim Miller <jaggies@google.com> Fix 3197205: Minor edits to device policy admin strings and documentation

Change-Id: I3788772c375b916752cd8a98ff5d3751448e4334
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
d26727273d16745ceddc2203121d29c3a9e7733c 16-Feb-2011 Andy Stadler <stadler@google.com> @hide DPM global proxy settings

They don't work as advertised, so remove from SDK.

Bug: 3460938

Change-Id: I87f80ebf38b228a4085630f1c2526c1d86b93dd7
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
22dbfda976aab9ae897eed0625e2e64ead32bbc4 17-Jan-2011 Andy Stadler <stadler@google.com> Add internal plumbing to DPM for encryption

* Add code to persist per-admin setting
* Add hooks for OS-level tie-in (is supported, get / set status)
* Add 3rd API call to get OS status (irrespective of admin settings)
* Remove "REQUESTED" status, no longer relevant with 3rd API
* Fixed bug that impacted global proxy settings
* Update api/11.xml to match current.xml

Bug: 3346770
Change-Id: I56bdf9a7894f6ca4842402c7b82ddb3caf4b37b9
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
7b0f8f08ac7b3ed5cf462b92283713b033d6a64a 12-Jan-2011 Andy Stadler <stadler@google.com> API changes to support encryption in DPM

* New uses-policies value
* Definitions for storage domain and encryption status
* API to get and set encryption status
* Intent to launch encryption changes
* Both new calls bottom out in the DPM service and are suitable for
a device that does not support encryption.

NOTE: Nobody should use ACTION_START_ENCRYPTION yet. It needs a receiver
to be built in Settings (different CL).

Change-Id: I2ae193bedbec59f6ba46c0ec7de12ecf321e5803
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c25f70a440ef9468085b8d98c8416c7e8b116753 09-Dec-2010 Andy Stadler <stadler@google.com> API CHANGE - Add hasGrantedPolicy() API

* Allows an app to detect that it needs to have additional policies granted
* Add "refreshing" parameter to setActiveAdmin() to handle this case
* Minor cleanups to eliminate warnings (mostly for unused things)

Bug: 3253179
Change-Id: I4bf639bf560557130bf98e8cfb75f996fac416f1
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1f35d487ba1a5208e66bc960f35f6e1d874fbd1e 20-Nov-2010 Andy Stadler <stadler@google.com> Fixes to DevicePolicyManager.setPasswordExpirationTimeout

* Fix permissions problem in DevicePolicyManager
* Allow short timeouts (primarily for testing)
* Remove unused debugging code

Bug: 3212583
Change-Id: I3770b1c6f090363e8e8d65db92839cd53de05c45
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a4e28d181942018ba8759989799a28fa88764ce3 09-Nov-2010 Jim Miller <jaggies@google.com> Add password expiration support to DevicePolicyManager.

Change-Id: Ib2629ec547c123ac489d7f4cbd4e0a1d4aa07620
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
027610a76e67f39e3a435d68ec785a1cf09dcf9c 18-Oct-2010 Kenny Root <kroot@google.com> resolved conflicts for merge of 964eb438 to master

Change-Id: I0c54d6b88356d8734d7f51234b0114434414502e
424991704b5fb7a64f6cf0fcc3f4b1aabbf2a2e0 16-Oct-2010 Dianne Hackborn <hackbod@google.com> Implement issue #3094621 and #3094609 - wipe sd card

3094621: add "wipe sd card" option to factory data reset
3094609: collapse unmount/format into one command

Also since we have decided that it is important to consider
the Crespo storage as internal storage, DevicePolicyManager
gets a new API to be able to wipe it. (No big deal, since
all of the work for this is now done in the implementation
of the new UI.)

Change-Id: I32a77c410f710a87dcdcbf6586c09bd2e48a8807
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
8063589c6ca6ee3575befe8caf4f6c3e6b58b655 05-Aug-2010 Oscar Montemayor <oam@google.com> Removed extra parameter tag in JavaDocs

Change-Id: I0bc6f201d12a95a7c96b3fac90688d113a554d22
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
69238c6a37ae43c748ad9cd7613f2209149ee7da 03-Aug-2010 Oscar Montemayor <oam@google.com> Device Policy Manager changes to enable Global Proxy.

Change-Id: I8489df7d28e4c5312e10d5cecc8e2a182413a034
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
c857740f242169f2ca7fd42f0d1268661b399ad6 05-Jun-2010 Konstantin Lopyrev <klopyrev@google.com> Adding support for minimum number of non letter characters.

Change-Id: If54cb7209d65eef826d474d7e0dbbef63d2f2b47
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
1a0ce1cc6f6bda7ef7345b20860bc0c8cd3d8451 09-Jun-2010 Jim Miller <jaggies@google.com> am db603bb5: am 3b68548d: am 75b6a6b9: Merge "Fix 2737842: Disable KeguardManager API if device policy is enabled" into froyo
284b62e1b8c3419bfd02c6fea5ba0a68146c06f8 08-Jun-2010 Jim Miller <jaggies@google.com> Fix 2737842: Disable KeguardManager API if device policy is enabled

This change adds notification to find out when the device policy
has changed. When an admin adds or changes a policy, we get notified
and reset the state of keyguard to be enabled.

It also moves disabling keyguard into the TokenWatcher.acquired()
method to avoid disabling keyguard when a policy doesn't permit it.
This avoids reference counting issues in TokenWatcher and hence relieves
the ordering issue.

There is one remaining caveat. An application that uses KeyguardManager
to disable keyguard will need to disable keyguard again after any
policy change.

Tested:

Install and run app that disables keyguard with no admin. Result: keyguard is enabled/disabled as expected.
Enable admin and set quality = "something" after installing & running app. Result: keyguard is enabled.
Change admin password quality to "unspecified" and re-run app (per caveat). Result: keyguard is disabled.
Change admin password quality to "something" again. Result: keyguard is enabled.
Disable admin : Result: keyguard is enabled until app runs again (per caveat).

Added minor cosmetic changes after review.

Change-Id: I302f2b01446bf031f746b0f3e8b5fd7a6cc0e648
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
a15dcfaf2bc7cbd13b30db6766afe3bbaa01db97 25-May-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 2677197: Adding minimum complex character support.

Change-Id: I520bc5f9aa924bf9b5585b2235a91cc96cb99c25
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
3255823de062e981f7bfc7994919207988697e45 21-May-2010 Konstantin Lopyrev <klopyrev@google.com> Fix 2673731: Adding support for password history to Device Admin.

Change-Id: If3240048813e32b2bae79fe5cb8a73aea20ec56c
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
85f2c9ce5a0e074df2429a5d66e1754e368a0430 22-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2530103: ActivePassword data in Device Policy Manager needs to be persisted

Also fixes how the quality vs. mode is handled to be more consistent, which also
required introducing a new "alphabetic" quality since it is possible for the user
to enter such a password.

The current password quality and length is stored in the DPM, since at boot it
couldn't figure this out from the stored password.

Change-Id: I519d9b76dd0b4431bcf42920c34dda38c9f1136e
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java
87bba1ee14279bb14a28d42e27c4ef66d9967bf8 27-Feb-2010 Dianne Hackborn <hackbod@google.com> Move DeviceAdmin APIs to android.app.admin.

Also add ability for admins to hide themselves when not in use,
a facility for admins to not allow other admins to reset
their password, and debug dumping.
/frameworks/base/core/java/android/app/admin/DevicePolicyManager.java