History log of /frameworks/base/core/java/android/os/UserManager.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
a9f9c4b90a8af25974bc74971efeafa521073df2 15-Jan-2015 Nicolas Prevot <nprevot@google.com> Merge "Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING" into lmp-mr1-dev
b14ed95647ff7c38869550606396d5b784eeece1 13-Jan-2015 Nicolas Prevot <nprevot@google.com> Fix javadoc for UserManager.KEY_RESTRICTIONS_PENDING

BUG:18983720

Change-Id: I3af3354f746cd2981cdb8ba2ed6cc380665249ee
/frameworks/base/core/java/android/os/UserManager.java
150514bd03312ab0a890cc040019cfbc73eb077c 08-Jan-2015 Amith Yamasani <yamasani@google.com> Clarify docs for user restrictions

Specify which restrictions are not relevant or behave differently
for managed profiles.

Bug: 18768578
Change-Id: Iac1435c5b931cbb889902a9b9e427bc0e0778bf2
/frameworks/base/core/java/android/os/UserManager.java
34b6e35ba67a1dd4b770fbf80fe8f3dc1e1e01e3 18-Nov-2014 Nicolas Prevot <nprevot@google.com> Fix javadoc in UserManager mentioning application restrictions.

The java doc of UserManager.KEY_RESTRICTIONS_PENDING contains mistakes.

BUG: 18414603
Change-Id: I9584dad545dcbef1eb2ee0e4f5df117486435e8a
/frameworks/base/core/java/android/os/UserManager.java
cc8d56f66c64a66002b90ed014bbd2fb46125f63 10-Nov-2014 Andres Morales <anmorales@google.com> Merge "Unhide DISALLOW_OUTGOING_BEAM" 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/os/UserManager.java
cd3b72e6f9a158ac492a4a8b5629d73b495a7d1e 06-Nov-2014 Andres Morales <anmorales@google.com> Unhide DISALLOW_OUTGOING_BEAM

Bug:17387303
Change-Id: If4410bbfd9f82c84886024a091454ee931d9d930
/frameworks/base/core/java/android/os/UserManager.java
6d93491f506312e0686d86f278eac6f48a364242 14-Oct-2014 Amith Yamasani <yamasani@google.com> Hide DISALLOW_OUTGOING_BEAM API

This is not fully functional in managed profiles, so it is being removed for L.

Bug: 17973040
Change-Id: If660e5e565076cdf61649e9f5ca12877425e9df3
/frameworks/base/core/java/android/os/UserManager.java
89b196958fee07475765bd3c458098464ba16f2e 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Merge "Put in real "code" (aka marketing) name." into lmp-dev
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
/frameworks/base/core/java/android/os/UserManager.java
aa6634eaca707f7cbf5f5a1d75b90d8d775d254b 06-Oct-2014 Amith Yamasani <yamasani@google.com> Set the default user restrictions to disallow calling and sms

When creating a user via the UI, disallow phone calls and SMS by
default. Primary user must explicitly enable it via Settings.

Bug: 17832802
Change-Id: I18cad4be8493ddc8890b5d90da2df256cb3f1ec9
/frameworks/base/core/java/android/os/UserManager.java
67a101aa3006aa2011a9d9edaacb2fa6f6f31140 02-Oct-2014 Dianne Hackborn <hackbod@google.com> SDK only: Update docs to reflect current implementation.

Change-Id: I498425bb55b157c954af6a2441d8bd9be3871c55
/frameworks/base/core/java/android/os/UserManager.java
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/os/UserManager.java
988ae30ff7729ac0e9a44ee665c7e00f1961e7cd 18-Sep-2014 Adam Powell <adamp@google.com> Fix UserManager#isUserAGoat

Correctly detect if the user is a goat.

Change-Id: I78577dd7ec8c3685434ee03560010a6ea4db127f
/frameworks/base/core/java/android/os/UserManager.java
64d4dca63f65e4c7d4a829c85ff6670bdd34e2eb 28-Aug-2014 Alexandra Gherghina <alexgherghina@google.com> Assign default icon to users at creation time and in SystemUI.

Right now different code in System UI, Settings app and other places replace the
user icon with their own default. This tries to make it consistent by moving the
mechanism used in Settings in a helper class.

Bug: 17311038
Change-Id: Ic858c65bf82a98b9806dbba029e7cdcf441f372e
/frameworks/base/core/java/android/os/UserManager.java
8cd28b57ed732656d002d97879e15c5695b54fff 09-Jun-2014 Amith Yamasani <yamasani@google.com> Apply cross-user restrictions to Shell

Even though Shell user is allowed to perform cross-user actions,
lock that path down if the target user has restrictions imposed by
the profile owner device admin that prevents access via adb.

If the profile owner has imposed DISALLOW_DEBUGGING_FEATURES, don't
allow the shell user to make the following types of calls:
start activities, make service calls, access content providers,
send broadcasts, block/unblock packages, clear user data, etc.

Bug: 15086577
Change-Id: I9669fc165953076f786ed51cbc17d20d6fa995c3
/frameworks/base/core/java/android/os/UserManager.java
26af829fd70609cf073b56e54e1f78faf83a5e8b 09-Sep-2014 Amith Yamasani <yamasani@google.com> User restriction to disallow outgoing NFC beam

This can be controlled by MDMs via DPM.

Also fixes:
- javadoc for restrictions
- persisting of cross profile copy/paste restriction

Bug: 17387303
Change-Id: Ie148f56189181d2a4c6345c0823d417ab13a94a3
/frameworks/base/core/java/android/os/UserManager.java
c7d62f02b8acfd0a6b31f8544ec2c07e780fe4bb 05-Sep-2014 Svetoslav <svetoslavganov@google.com> Addressing API council comments for UserManager.

bug:17390424

Change-Id: I498d2541289915cb7db16e5c3249ccc7a7dc5ee6
/frameworks/base/core/java/android/os/UserManager.java
29ce85bab94a2d0dc98d9075ae86c8a282367117 04-Sep-2014 Amith Yamasani <yamasani@google.com> Don't allow guests to install from unknown sources

Added a user restriction when creating a guest.
Made sure that guests can't install profile owners that
could undo the restriction.

Bug: 17359648
Change-Id: Icdd919e8b1cbd79a69aacb76e573ec3449f18e4c
/frameworks/base/core/java/android/os/UserManager.java
0e8d7d63ba439cc0604af7055679dae3d30fdc48 03-Sep-2014 Amith Yamasani <yamasani@google.com> Add some @SystemApi tags for internal user-related APIs

Also added an internal isManagedProfile()

Bug: 17371392
Change-Id: Ibcc26771d954505cbd530192bf4a8a25a8d4cae0
/frameworks/base/core/java/android/os/UserManager.java
1df1473008c24487701c5bc15f39ed9f9697f421 30-Aug-2014 Amith Yamasani <yamasani@google.com> Make it possible to remove current user

Due to the async nature of switching users, it's not possible to
switch and remove immediately. So mark the switch target user as
soon as the user switch is requested, so that a remove will proceed
without failing at stopUserLocked().

Also, fix a similar problem with deleting the current guest and
switching to a new guest. It was attempting to remove the current
user which will result in a failed stopping of the user.
Added a way to mark the current guest
for deletion so that a new one can be created, switched to and the
old one deleted. If runtime fails, old guest is already marked for
deletion and will be cleaned up on restart.

Bug: 17321533
Change-Id: I4be0fb956227e0bb95588b5b1f2867fb1e655c0d
/frameworks/base/core/java/android/os/UserManager.java
2cb384f42569f36e19ecee60da259d69048fdd85 13-Aug-2014 Julia Reynolds <juliacr@google.com> Prevent profile owners from setting certain user restrictions.

Bug: 16351901
Bug: 16701492
Change-Id: Ie866bc24d2d7cc15f86c5b50062a730e099612a1
/frameworks/base/core/java/android/os/UserManager.java
681bf60ce2a3973d5982f9b7a405bcef5fb72f20 18-Aug-2014 Sunny Goyal <sunnygoyal@google.com> Fixing bounds check.

Change-Id: Ie17b173ef88288076a5cbfdc741b8e105dcda03e
/frameworks/base/core/java/android/os/UserManager.java
d97a0e7281e3e8d3884ed580d4db4c97331509ed 15-Aug-2014 Amith Yamasani <yamasani@google.com> Merge "Copy certain settings to the managed profile" into lmp-dev
4f7e2e334e4ca5f1a67baf4bdd40cd080b954161 15-Aug-2014 Amith Yamasani <yamasani@google.com> Copy certain settings to the managed profile

All reads of those specific settings will go to the primary user.
Inserts to primary also go to managed profiles in order to notify
any observers.

This enables Location settings to be shared by both profiles.
Also some other settings related to IME and Accessibility since
those services are shared across the profiles.

Bug: 16457210
Change-Id: Ib8fd697b5c78027fcbaf245d82dda5e6d6aab4f0
/frameworks/base/core/java/android/os/UserManager.java
d438deffad74ed5cc37b68100577215b9f08e6ff 15-Aug-2014 Julia Reynolds <juliacr@google.com> Merge "Apply lockdowns when user restrictions are set." into lmp-dev
3d9eb78fe91ab2479eb38443aed588e10421e31b 11-Aug-2014 Julia Reynolds <juliacr@google.com> Apply lockdowns when user restrictions are set.

Previously DMAgent would apply these lockdowns before/
after setting the matching user restrictions.

Bug: 16701642
Bug: 16945830
Bug: 16944983
Change-Id: Ib4f7145055687f12408d6ccacd8e6380406a32b2
/frameworks/base/core/java/android/os/UserManager.java
95ab7849444125387dc88088bb5197ee463d8c17 12-Aug-2014 Amith Yamasani <yamasani@google.com> Decouple user limit from guest creation

Allow Guest to be created even if there are N users.
Allow N users to be created even if there are N-1 users
and a Guest.
Limit number of guests and managed profiles that can
be added.

Added unit tests.

Bug: 15934700
Change-Id: I1a8f0fa38a91d71ef7b2980e05c974244dfc337a
/frameworks/base/core/java/android/os/UserManager.java
c08cb0ed7a01cd076e8277e49e1492eeab09e9fa 07-Aug-2014 Kenny Guy <kennyguy@google.com> Revert "Revert "Remove String version of getBadgedLabel""

This reverts commit 82020f109d78af889dfc5e86ede04c54fb6f1de2.

Bug: 16484455
Change-Id: I601edbb705cacd29bf30f90c8666c5f516796ebb
/frameworks/base/core/java/android/os/UserManager.java
9962f335a176508c30e539565ad63518fa8ca0d1 07-Aug-2014 Kenny Guy <kennyguy@google.com> Revert "Remove String version of getBadgedLabel"

This reverts commit ed0096c14ae1b17845bc9bb8fbb1cdc47adfdd68.

Change-Id: If026db7e804be81aaa02cfd2a4e1a0a03ee020f1
/frameworks/base/core/java/android/os/UserManager.java
4a4f275f24f6673c435c5205522273ba3500dbcc 07-Aug-2014 Kenny Guy <kennyguy@google.com> Remove String version of getBadgedLabel

It was left to allow unbundled apps time to update.

Bug: 16484455
Change-Id: Ibae2576ac7fc88000ec81c669e66536aaa2e3e79
/frameworks/base/core/java/android/os/UserManager.java
c71c42fdb2ee54a419dc8eb0a5f4f82532b16c0c 06-Aug-2014 Svetoslav <svetoslavganov@google.com> Polish of the app widgets cross-profiles feature.

1. Added API for badging an arbitrary drawable at a given location.

2. Updated the icon and previewImage deprecation as they are no longer
returning a badged drawable. The methods to load the icon and the
preview are now just making it easier for a developer to get the
drawables.

3. Fixed a bug in AppWidgetServiceImpl leading to a crash when a user
is removed.

4. Fixed a bug in AppWidgetHost which was unnecessarily caching its
package name and having code paths where the cached value was not
populated when calling into the system.

bug:14991269

Change-Id: I50d011a6597d88814715d5ec04ee67815e8ce0bd
/frameworks/base/core/java/android/os/UserManager.java
8616af1a4dd1877996fbd5bb0179659f4f123573 31-Jul-2014 Amith Yamasani <yamasani@google.com> Setup correct initial guest restrictions

Disable SMS by default, in addition to any other the primary
user may have set.

Bug: 16474761
Change-Id: I67b510ac72c2adfcafd95fb34e50ab5d8194090a
/frameworks/base/core/java/android/os/UserManager.java
12451a39f480dde93a9280c1f289625eab92881f 30-Jul-2014 Julia Reynolds <juliacr@google.com> Merge "API council - DISALLOW_APPS_CONTROL -- need better documentation." into lmp-dev
c617f815453b6e70a0165924907e69a0f993e651 25-Jul-2014 Julia Reynolds <juliacr@google.com> API council - DISALLOW_APPS_CONTROL -- need better documentation.

Bug: 16401636
Change-Id: I168033eaabdb953d8e73f63792a7e729eb9eeff6
/frameworks/base/core/java/android/os/UserManager.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/os/UserManager.java
237aecd18d0edf56c038761f570758c310c9e6df 21-Jul-2014 Kenny Guy <kennyguy@google.com> Change getBadgedLabelForUser to use CharSequence

Bug: 16401636
Change-Id: I45410a6293007dd789d6770d63397824559b756e
/frameworks/base/core/java/android/os/UserManager.java
f1939901d2ed0480069f0b23be64f122fce93995 25-Jun-2014 Nicolas Prevot <nprevot@google.com> Making the clipboard work across users.

When copying from the parent: the ClipData can be pasted in the managed profile.
When copying from a managed profile: it can be pasted in the parent,
unless the policies says it's disabled. In which case, the clipboard of the parent becomes empty.
Supporting content uris.

BUG: 15186236

Change-Id: I522564a7c07ff21df137adcda980bb52e5739964
/frameworks/base/core/java/android/os/UserManager.java
390989da1967f9d385212cd2e22a50589ce69046 17-Jul-2014 Amith Yamasani <yamasani@google.com> Split telephony restrictions into outgoing calls and sms

DISALLOW_TELEPHONY renamed to DISALLOW_OUTGOING_CALLS and introduced
DISALLOW_SMS.

Outgoing emergency calls should always be permitted.

Change-Id: I0a38ef6e2df9dcf62d16fd93622ad61f4327614f
/frameworks/base/core/java/android/os/UserManager.java
5b8224901b5de0cfe7b4a1d3cb158e38243ef99f 17-Jul-2014 Julia Reynolds <juliacr@google.com> Update message on DISALLOW_REMOVE_USERS constant.

Change-Id: I4f873eba4082278553ded830bb902fb3a3195d87
/frameworks/base/core/java/android/os/UserManager.java
409297da182267465adbc21cfb75a23e8d678117 11-Jul-2014 Dianne Hackborn <hackbod@google.com> Allow INTERACT_ACROSS_USERS for service access.

But only if the two users are in the same profile. Also
apply the same rule for the recently allowed interaction
across content providers.

The activity manager now keeps track of which users are in
the same profile group, and the handleIncomingUser function has
an option to allow a non-full caller to do the interaction
if the two users are in the same profile group.

Spread this joy all over the place.

Also turn off multi-user on Svelte devices.

Change-Id: I231484ea2a6bfccbb3cd51357d7a387bd75039ea
/frameworks/base/core/java/android/os/UserManager.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/os/UserManager.java
e4afaa3a3d7c2885b82fe43f51bcf04e036f7462 30-Jun-2014 Amith Yamasani <yamasani@google.com> Store and retrieve default Guest settings

Save the default guest restrictions for use when a guest is created.

Bug: 15761405
Change-Id: I28db7d823944b0b47527a4909c10cc856c842a62
/frameworks/base/core/java/android/os/UserManager.java
f7ecf7c80520c017255cb350d183f0b62022349b 18-Jun-2014 Kenny Guy <kennyguy@google.com> Add badging a label to support accessibility.

To provide a way to differntiate the content description
of an icon that has been badged with a managed profile
badge.

Bug: 15106236
Change-Id: Icd5798bbd2410a105054877e3862e199eff24b88
/frameworks/base/core/java/android/os/UserManager.java
36fbc8d6453da438a8ab83352ff1bcfcba5f25b5 18-Jun-2014 Julia Reynolds <juliacr@google.com> Rename apps User Restriction.

Change-Id: I9f81a6b94ba06b593e7213967df51c7cb30a7b31
/frameworks/base/core/java/android/os/UserManager.java
a596ff87cd899640334512371456b8481ba21b4a 13-Jun-2014 Amith Yamasani <yamasani@google.com> Show user switcher if guest is enabled

even if there's only one user.

Bug: 15549064
Change-Id: Ib9bc5e6cdc6f2655e44ec0a10a701dd39389e648
/frameworks/base/core/java/android/os/UserManager.java
1e9c21871e81642669079cd290ef47818a3165bd 12-Jun-2014 Amith Yamasani <yamasani@google.com> Guest user first iteration

Setting for controlling if guest is enabled on the device.
Setting to hint to apps that they should skip showing first use clings.

User switcher handles creation and deletion of the guest user.
Some tweaks to the user switcher to show some feedback and make the icons
circular.

Change-Id: I187dc381d2ee7c372ec6d35e14aa9ea4dfbe5936
/frameworks/base/core/java/android/os/UserManager.java
03f5ff482e58474e9da7a2213fb96d0e0a877a4b 09-Jun-2014 Julia Reynolds <juliacr@google.com> Merge "Unhide UserManager.hasUserRestriction()."
2b2cf72f10f13d9314a1c53386188ed48e12d47c 06-Jun-2014 Julia Reynolds <juliacr@google.com> Unhide UserManager.hasUserRestriction().

Bug: 15466331
Change-Id: I83a0a77ffcb9781ec0517aed219ee9012137676f
/frameworks/base/core/java/android/os/UserManager.java
701ea7cf86b7d408b8d3bc1aab054be0333e1f26 09-May-2014 Kenny Guy <kennyguy@google.com> Badge notification from managed profiles.

Add a method to the UserManager to provide access
to bitmap of badge for managed profile.
Overlay the icon view in notification templates with
the badge from the UserManager.
Notifications with custom views won't be badged.

Bug: 12641490

Change-Id: I1f2aae927e75fc8a955e4d5bbc3cc81127d87069
/frameworks/base/core/java/android/os/UserManager.java
9f6c25f57e26f3e2f9c744547a139d14b7d3db5c 16-May-2014 Amith Yamasani <yamasani@google.com> Per-user telephony restrictions

Allow profile owners or administrators of restricted profiles
to restrict access to telephony features such as calling and
texting for a user.

Change-Id: I89f97608c07c647ad8a7b43fef9d1e6bc4a84e95
/frameworks/base/core/java/android/os/UserManager.java
be81c800ae6216e30b6008b4c73172b36531c405 22-Apr-2014 Jessica Hummel <jhummel@google.com> Add api for getting the parent of a profile.

Change-Id: Ife59665cdf6531a118d74def864c8cfc92c92a42
/frameworks/base/core/java/android/os/UserManager.java
394a6cdd987fed79bd040f39e2d3e47d4484bab4 07-May-2014 Emily Bernier <ember@google.com> New user restrictions for EDU

New user restrictions will allow schools to prevent students from 1) using
device microphones, 2) adjusting device volume, and 3) mounting physical
external media.

Change-Id: Ib2fcb7ce8fbc489a25d2c97a122b2124012a9e3c
/frameworks/base/core/java/android/os/UserManager.java
d46d0f9dcd72dfaa93a57d07d896def6ce53bbae 23-Apr-2014 Julia Reynolds <juliacr@google.com> Add new EDU user restrictions.

Change-Id: I6aad10466d99cda6be378c72025df686fe665071
/frameworks/base/core/java/android/os/UserManager.java
973a1d27417d22add96d716bfce702a48543931b 01-May-2014 Alexandra Gherghina <alexgherghina@google.com> Merge "Revert "Temporarily switch off returning only enabled profiles to support dogfooding""
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/os/UserManager.java
f2e7b3f56ae0ea9f49b5c50413b9be71d5249d6d 30-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Revert "Temporarily switch off returning only enabled profiles to support dogfooding"

This reverts commit 199c35a21ea9bddde80fdb435ec604f729b0cbe7 because client code has been updated.

Bug: 14132551
Change-Id: I7159087dfaded6f2bfe90ef103f74b242acb166c
/frameworks/base/core/java/android/os/UserManager.java
250bb6e3e045a88022db526b074e7ab38c47d93c 25-Apr-2014 Amith Yamasani <yamasani@google.com> Merge "Allow profile owners to set user restrictions"
92d6aea86e5fbe59b6dd1dcc157118b1c57d7a57 25-Apr-2014 Alexandra Gherghina <alexgherghina@google.com> Temporarily switch off returning only enabled profiles to support dogfooding

Bug: 14132551
Change-Id: I3679c8fc248a799c816e5b80641b1fca6b7af061
/frameworks/base/core/java/android/os/UserManager.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/os/UserManager.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/os/UserManager.java
9c32cd498a8067d4487a97fbf93d8587bfcec1fd 23-Apr-2014 Emily Bernier <ember@google.com> Fix build.

Don't link to MANAGE_USERS permission in Javadoc.

Change-Id: Iad1391a0281a3fad06529a86b277f787791e94fc
/frameworks/base/core/java/android/os/UserManager.java
7a2b4d11c741de8b78570c0e11f49deb165e35da 23-Apr-2014 Emily Bernier <ember@google.com> Allow device or profile owner app to modify user restrictions.

Currently this is gated on being a system or root app with the
MANAGE_USERS permission; third-party MDM apps set as device or profile
owner should have this ability as well.

Bug: 13585295

Change-Id: I61d21b13b9ec66fc0cb497ec2007ee732461d448
/frameworks/base/core/java/android/os/UserManager.java
7dda2657be1fcc808566dab3482df9d643ceb0f5 11-Apr-2014 Amith Yamasani <yamasani@google.com> Expose an API to generate a badged icon for managed profiles.

Change-Id: I6257f43934ba6eefe752003942d8d3bcf207d5f9
/frameworks/base/core/java/android/os/UserManager.java
9d43dc5e4eba1bf96f0b8fa5deae5ee61a7f85ad 09-Apr-2014 Kenny Guy <kennyguy@google.com> Merge "Finish rename of related users to profiles."
5abdbb656063160ff8df2306bd01feba0714d4c1 09-Apr-2014 Amith Yamasani <yamasani@google.com> Avoid security exception when requesting badging

When requesting badged icons, use APIs that don't require the caller
to have MANAGE_USERS permission.

Change-Id: I218cdf5194f38f4affa1874a6fcb43a040ed5295
/frameworks/base/core/java/android/os/UserManager.java
4f58263d02f296430a9653126d28501e95c7bb6c 19-Feb-2014 Amith Yamasani <yamasani@google.com> Launcher APIs and broadcasts for managed profiles

UserManager
- Corp badging
- Querying list of managed profiles

Launcher API
- LauncherApps and Service to proxy changes in managed profile
to the launcher in the primary profile
- Querying and launching launchable apps across profiles

Change-Id: Id8f7b4201afdfb5f414d04156d7b81300119289e
/frameworks/base/core/java/android/os/UserManager.java
abf564ac9c4c2e2ae5063932cc5d5cf947b07015 02-Apr-2014 Kenny Guy <kennyguy@google.com> Finish rename of related users to profiles.

Clean up methods left to avoid multi project commit.

Change-Id: Ibf506af2a4bcbbd7c8044b3f62a68761451242c7
/frameworks/base/core/java/android/os/UserManager.java
2a764949c943681a4d25a17a0b203a0127a4a486 02-Apr-2014 Kenny Guy <kennyguy@google.com> Rename related users to profiles.

Rename the related user concept as profiles.
When returning profiles of a user include the
user as a profile of itself.

Change-Id: Id5d4f29017b7ca6844632ce643f10331ad733e1d
/frameworks/base/core/java/android/os/UserManager.java
1a447535cef7e3739d5f763dfe13e568568b9789 20-Feb-2014 Kenny Guy <kennyguy@google.com> Hide managed profiles from user switchers.

Hide managed profiles from lockscreen user switcher on tablets.
Hide managed profiles from power menu user switcher on phones.
Add flag to enable multi user ui turned off by default.

Change-Id: I4c69a6f7b0f39c249fc85fd940318df1ddab073f
/frameworks/base/core/java/android/os/UserManager.java
a52dc3eb40777b055c0ca8d7885bd2c9577bcd1a 11-Feb-2014 Kenny Guy <kennyguy@google.com> Add concepts of related users and managed profiles to user manager.

Related users are a group that will share things like notifications.
Managed profiles are a profile of another user.

Change-Id: I2d0532f1abf939810f0fa3fc7c77ad13fa567833
/frameworks/base/core/java/android/os/UserManager.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
/frameworks/base/core/java/android/os/UserManager.java
d304af69891483aad808356af1ac5f00e90c8edf 05-Sep-2013 Amith Yamasani <yamasani@google.com> Remove unused APIs and rename others based on API review

Restrictions challenge is only to be used by device admins.

Bug: 10461761
Change-Id: I3db1249e2ce99f386602de59ed930302bb0a97fb
/frameworks/base/core/java/android/os/UserManager.java
b12ba933f3db9280edcb6a3591741d29c109a4e2 04-Sep-2013 David Christie <dnchrist@google.com> Make location QuickSettings multi-user compatible (b/10563313)

Change-Id: I8ae5238e66fa2d6890ffe5697d3e6d5f50413c3e
/frameworks/base/core/java/android/os/UserManager.java
0343ec3abb205b21d554ab432710ff854f3d9d75 22-Jul-2013 Amith Yamasani <yamasani@google.com> User restriction API to disable single-user restrictions feature.

Change-Id: I80e08b38b5e32f3cb1af51398907510508ec199f
/frameworks/base/core/java/android/os/UserManager.java
1a7472e7220a2b027464fb4a2281550f784a2ca3 02-Jul-2013 Amith Yamasani <yamasani@google.com> Have UserManagerService clear the restrictions and unblock apps

Since this is an operation that could take a few seconds to run and needs to be
completed even if Settings dies, best to do it in the user manager.

Refactored PIN challenge/setup UI with a field to verify existing pin
when changing to a new one.

Change-Id: I0b7df5b2ccb7f343aa9282a9245d3bc2b577a794
/frameworks/base/core/java/android/os/UserManager.java
655d0e2029e6ae77a47e922dce4c4989818b8dd1 12-Jun-2013 Amith Yamasani <yamasani@google.com> Single-user restrictions

Introduces a new "blocked" state for each package. This is used to temporarily
disable an app via Settings->Restrictions.

PIN creation and challenge activities for use by Settings and other apps. PIN
is stored by the User Manager and it manages the interval for retry attempts
across reboots.

Change-Id: I4915329d1f72399bbcaf93a9ca9c0d2e69d098dd
/frameworks/base/core/java/android/os/UserManager.java
2555dafce87e60fae28d71913730abf73e40fcd7 25-Apr-2013 Amith Yamasani <yamasani@google.com> Hide isLinkedUser()

It's not the best API to use to determine anything. Defer to other
APIs such as UserManager.getUserRestrictions()

Bug: 8720520
Change-Id: Ie49589056ab52b4fdbcc736f8cdefadb8ba5d9d8
/frameworks/base/core/java/android/os/UserManager.java
7e99bc02c8e2f44dd92d70bfa6e654297e5286d8 17-Apr-2013 Amith Yamasani <yamasani@google.com> Modify restrictions bundle per api council recommendations

Use a Bundle for persisting and passing to the application, but use a
list to return data back from an application that's exposing restrictions.

Changed the xml reading/writing code to store the value type in the Bundle
so that it can be reproduced when reading. Earlier we were assuming only
String and String[].

Bug: 8633967

Change-Id: I523d5553728edcf28a1e9d432f490b4956f34215
/frameworks/base/core/java/android/os/UserManager.java
e1375908a5f05e5c926e95049970c4505e4dfad9 14-Apr-2013 Amith Yamasani <yamasani@google.com> Rename isUserLimited to isLinkedUser

A linked user is derived from another user and shares their accounts.

Change-Id: Ia2e63d573ccb635495ec54f31ac7b174725ad7a8
/frameworks/base/core/java/android/os/UserManager.java
46bc4ebb87232b39d7b02ac0135c8ccf2c33f233 12-Apr-2013 Amith Yamasani <yamasani@google.com> Rename isUserRestricted to isUserLimited

Avoid confusion with user restrictions which can be applied to
non-limited users as well.

Updated the java docs.

Change-Id: I4097c50b528b01a49cebcb0832d09f2b06998faa
/frameworks/base/core/java/android/os/UserManager.java
b223f73a69f76f5e32a0bca267f945f464776f9d 11-Apr-2013 Emily Bernier <ember@google.com> Add user restrictions (credentials, user removal)

Created constants in current.txt and UserManager.java, modified restrictions access in UserManagerService.java.

Change-Id: If8d778d84af81dcbf5784f6e0afd9ef966cc8ecf
/frameworks/base/core/java/android/os/UserManager.java
27db46850b708070452c0ce49daf5f79503fbde6 31-Mar-2013 Amith Yamasani <yamasani@google.com> Block access to accounts for limited users.

Make sure that apps that have access to restricted accounts can see them.
If they don't have access, they shouldn't be able to add a new account either.
Show an error message in the account picker if the user/app is not authorized.

Change-Id: I117c0b14d7d06c5ac4e66506df156b174567f5f3
/frameworks/base/core/java/android/os/UserManager.java
a12fccf57d5ec289793699d9b22ff45daccd3933 14-Mar-2013 Maggie Benthall <mbenthall@google.com> Add user restrictions for bluetooth, sideloading, usb file transfer

Created constants for these in UserManager and current.txt. Also created
an accessor for individual user restrictions that takes the restriction key
(removing individual methods for particular restrictions).

Change-Id: Ibb5517cbcdffadd3925f52cbe67d7d525813faa9
/frameworks/base/core/java/android/os/UserManager.java
ca050adc13b48c58c978255dd5ce6d9654549cb0 27-Mar-2013 Amith Yamasani <yamasani@google.com> Fix docs build.

Change-Id: I959db164f0ed7badfcdf921ffa1bfff60b4fb952
/frameworks/base/core/java/android/os/UserManager.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/os/UserManager.java
df2e92a535e19c00edd37318d974dab992ccc2c1 02-Mar-2013 Amith Yamasani <yamasani@google.com> Application restrictions API

Adds the ability for apps to export some restrictions. The restrictions
are presented in Settings based on the restriction type. The user's
selections are stored by UserManagerService and provided to the
target user's application as a list of RestrictionEntry objects which
contain the key, value(s).

Also introduce a manifest entry for system apps to request that the
app be automatically installed in all users, so that they cannot be
deselected by the owner user.

Shared account filtering for non-whitelisted apps.

Change-Id: I15b741e3c0f3448883cb364c130783f1f6ea7ce6
/frameworks/base/core/java/android/os/UserManager.java
6794458f8626c3be27eac3db3a5c89d94f132675 22-Feb-2013 Maggie Benthall <mbenthall@google.com> Add location sharing toggle user restriction.

And add support for respecting it.

Change-Id: Ia5cf9134c5f5741c3f55afadbe54f862da7bfe5b
/frameworks/base/core/java/android/os/UserManager.java
e4cf73437a18c1444055f88a1fcc0d146ec23ac5 17-Dec-2012 Amith Yamasani <yamasani@google.com> Starting point for User Restrictions API

Restrictions saved as key/value pairs, mostly booleans right now
but might be expanded to other types later.

Save and restore restrictions in the user manager service.
Enforce some of the restrictions at the framework level. Some
are enforced (also) at the app level, such as in Settings.

Change-Id: Id11ffe129cb6a177e094edf79635727388c26f40
/frameworks/base/core/java/android/os/UserManager.java
b26306ad5277097b3abb345112b24d9a142fb299 25-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7408647: Add getUserCount() API

Change-Id: Ib4e8e2300757e0941fae8fbc46c4323f5e2d7d6b
/frameworks/base/core/java/android/os/UserManager.java
ff54920ed222a2bd6abe618743a5a3e9fe10bd4b 12-Oct-2012 Amith Yamasani <yamasani@google.com> Temporarily disable multiuser for specific builds

Enable switching through power menu for other builds

Change-Id: I0bd8450583e078b0a83fb639337427ab84db5ab8
/frameworks/base/core/java/android/os/UserManager.java
a8a9bd65bf5865d83ef44f54552ca39522bfbcf0 10-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7311376: Add API to allow apps to know if they are...

...running as the foreground user

Add UserManager.isUserRunning() which is the public version of the
existing method on ActivityManager.

Also add UserManager.isUserRunningOrStopping() since that seems like
it will be useful.

And fix the internal function that returns the array of currently
running users to not include stopped users.

Change-Id: I84672fa8748fc027fd402729586b5603f640e498
/frameworks/base/core/java/android/os/UserManager.java
33f9cb8cf01e0a6288eb5b9ce724c56aa4e1e382 05-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7290206: Need API to get/look up user serial number

Change-Id: I1713215e7c205b1b66c36488f89e3fbf4572cb97
/frameworks/base/core/java/android/os/UserManager.java
466bd636812684aeb8161f144597cc3b3ed39078 21-Sep-2012 Dan Morrill <morrildl@google.com> Merge "New method returning user metadata." into jb-mr1-dev
920ace0bbc2d4133dbec991d2636c99a57d6245e 21-Sep-2012 Amith Yamasani <yamasani@google.com> Query users excluding any being removed

Keep track of user creation and last logged-in time.
adb shell dumpsys users
User switcher shouldn't show users about to be removed.
No need to check for singleton for activities.

Bug: 7194894
Change-Id: Ic9a59ea5bd544920479e191d1a1e8a77f8b6ddcf
/frameworks/base/core/java/android/os/UserManager.java
e4ab16ad98b183afbf7a21ad7314372de41a8b57 21-Sep-2012 Dan Morrill <morrildl@google.com> New method returning user metadata.

Change-Id: Ic1a42cf54152fe2e6bcd01b1bd9f1edb77d1710e
/frameworks/base/core/java/android/os/UserManager.java
4673e7ea8d1f869910a9c0f9c211d4d27ad50b41 19-Sep-2012 Jeff Sharkey <jsharkey@android.com> Migrate UI to supportsMultipleUsers().

Bug: 7194531
Change-Id: Ifbbe3b4d954f8d11fb1c94674e5e7f8e21264c75
/frameworks/base/core/java/android/os/UserManager.java
27bd34d9d9fe99f11b80aa0bbdb402fb47ef4158 16-Sep-2012 Jeff Sharkey <jsharkey@android.com> Multi-user MTP.

The current MTP kernel driver at /dev/mtp_usb is exclusive, meaning
only one process can have it open. In addition, each MTP session
with a desktop requires unique object IDs, which doesn't hold true
across users on the device.

To solve these two issues, when switching users we cycle the USB host
stack to disconnect both local and remote MTP connections, giving the
new user's media process a chance to claim /dev/mtp_usb, and causing
the desktop to initiate a new MTP session.

This change also allows BroadcastReceivers to registerReceiver()
allow retrieval of a current sticky broadcast. Adds a system property
to override maximum users. Removes MOUNTED broadcasts for secondary
users. Allows INTERACT_ACROSS_USERS to getCurrentUser().

Bug: 6925114
Change-Id: I02b4a1b535af95fb2142655887b6d15a8068d18a
/frameworks/base/core/java/android/os/UserManager.java
f7a6dfcafc1eaa8014b4fa796e4b31208f72fd36 18-Sep-2012 Amith Yamasani <yamasani@google.com> Merge "Pass Bitmap instead of ParcelFileDescriptor in UserManager" into jb-mr1-dev
e928d7d95dbb64627e6ff3a0572190c555b59d96 18-Sep-2012 Amith Yamasani <yamasani@google.com> Pass Bitmap instead of ParcelFileDescriptor in UserManager

Add a USER_INFO_CHANGED intent for lockscreen and quicksettings to use
to monitor changes to the user name or icon.

Bug: 7164040
Change-Id: Id6fb8b6d38ce04ccd02bbadcf0c10699783d6c03
/frameworks/base/core/java/android/os/UserManager.java
c33f94e2a50c9b03cb771237e8672743da8b1314 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix API review bugs." into jb-mr1-dev
8832c18d8b63367929c2d394c9c508f56003d400 18-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix API review bugs.

7173152 API REVIEW: android.content.pm.PackageUserState
7172969 API REVIEW: android.app.PendingIntent
7172730 API REVIEW: android.content.Context
7172726 API REVIEW: android.manifest.permission

Change-Id: Iad470256d3b5ca5596487f6a699ec1871457c3b5
/frameworks/base/core/java/android/os/UserManager.java
3b49f07a452e0a77c1d22db2065255689a461d31 17-Sep-2012 Amith Yamasani <yamasani@google.com> Add UserManager.getUserIcon()

So that we don't abuse the setUserIcon() for reading. So the new method won't try
to create the file, only return it if it exists.

Change-Id: I7a81d3f1b29d14d37e71f531744ce39f21d827ac
/frameworks/base/core/java/android/os/UserManager.java
1952637425eece18aa1ce3d80d4b49086ef3bcf7 22-Aug-2012 Amith Yamasani <yamasani@google.com> Remove permission requirement for some UserManager calls

Update javadocs to be explicit about permissions.
Minor fixes in UserManagerService

Change-Id: I0d355e0a60e5dbdb49ed06091111d480ff249f3d
/frameworks/base/core/java/android/os/UserManager.java
79af1dd54c16cde063152922b42c96d72ae9eca8 17-Aug-2012 Dianne Hackborn <hackbod@google.com> Switch public APIs to use new UserHandle class for identifying users.

Gets rid of "yet another integer" confusion.

Change-Id: Id07ea7307aea7c62f0087c6663a1f1c08e2e5dee
/frameworks/base/core/java/android/os/UserManager.java
2a00329c6d55c6cd9166e01963d7410e95d80d21 15-Aug-2012 Amith Yamasani <yamasani@google.com> UserHandle to UserSerialNo mapping

Use AtomicFile for usermanager files.

Added a MANAGE_USERS permission that apps (signature permission) can use
to create/query/modify/remove users.

Change-Id: I5cf232232d0539e7508df8ec9b216e29c2351cd9
/frameworks/base/core/java/android/os/UserManager.java
258848d2ae04f447ff1c18023fa76b139fcc0862 11-Aug-2012 Amith Yamasani <yamasani@google.com> User Manager service to manage users and query user details

Moved a bunch of methods from PackageManager to UserManager.

Fix launching of activities from recents to correct user.

Guest creation APIs

Change-Id: I0733405e6eb2829675665e225c759d6baa2b708f
/frameworks/base/core/java/android/os/UserManager.java