DevicePolicyManager.CreateAndManageUser Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Called by a device owner to create a user with the specified name and a given component of the calling package as profile owner.
[Android.Runtime.Register("createAndManageUser", "(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/ComponentName;Landroid/os/PersistableBundle;I)Landroid/os/UserHandle;", "GetCreateAndManageUser_Landroid_content_ComponentName_Ljava_lang_String_Landroid_content_ComponentName_Landroid_os_PersistableBundle_IHandler", ApiSince=24)]
public virtual Android.OS.UserHandle? CreateAndManageUser (Android.Content.ComponentName admin, string name, Android.Content.ComponentName profileOwner, Android.OS.PersistableBundle? adminExtras, Android.App.Admin.UserManagementFlags flags);
[<Android.Runtime.Register("createAndManageUser", "(Landroid/content/ComponentName;Ljava/lang/String;Landroid/content/ComponentName;Landroid/os/PersistableBundle;I)Landroid/os/UserHandle;", "GetCreateAndManageUser_Landroid_content_ComponentName_Ljava_lang_String_Landroid_content_ComponentName_Landroid_os_PersistableBundle_IHandler", ApiSince=24)>]
abstract member CreateAndManageUser : Android.Content.ComponentName * string * Android.Content.ComponentName * Android.OS.PersistableBundle * Android.App.Admin.UserManagementFlags -> Android.OS.UserHandle
override this.CreateAndManageUser : Android.Content.ComponentName * string * Android.Content.ComponentName * Android.OS.PersistableBundle * Android.App.Admin.UserManagementFlags -> Android.OS.UserHandle
Parameters
- admin
- ComponentName
Which DeviceAdminReceiver
this request is associated with.
- name
- String
The user's name.
- profileOwner
- ComponentName
Which DeviceAdminReceiver
will be profile owner. Has to be in the
same package as admin, otherwise no user is created and an
IllegalArgumentException is thrown.
- adminExtras
- PersistableBundle
Extras that will be passed to onEnable of the admin receiver on the new user.
- flags
- UserManagementFlags
#SKIP_SETUP_WIZARD
, #MAKE_USER_EPHEMERAL
and
#LEAVE_ALL_SYSTEM_APPS_ENABLED
are supported.
Returns
the android.os.UserHandle
object for the created user, or null
if the
user could not be created.
- Attributes
Remarks
Called by a device owner to create a user with the specified name and a given component of the calling package as profile owner. The UserHandle returned by this method should not be persisted as user handles are recycled as users are removed and created. If you need to persist an identifier for this user, use UserManager#getSerialNumberForUser
. The new user will not be started in the background.
admin is the DeviceAdminReceiver
which is the device owner. profileOwner is also a DeviceAdminReceiver in the same package as admin, and will become the profile owner and will be registered as an active admin on the new user. The profile owner package will be installed on the new user.
If the adminExtras are not null, they will be stored on the device until the user is started for the first time. Then the extras will be passed to the admin when onEnable is called.
From android.os.Build.VERSION_CODES#P
onwards, if targeting android.os.Build.VERSION_CODES#P
, throws UserOperationException
instead of returning null
on failure.
Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.