双开应用和主分身空间

UserHandle.myUserId() == UserHandle.USER_OWNER 

可以用上述的语句来判断是否是主空间和分身空间;(注意,这里的UserHandler的API和变量都是系统的,所以这个就是用了系统的API去判断当前系统是否是主分空间。

 

 

启动双开应用有两种形式:

一.参数是userId,然后封装成UserHandler对象的形式

ContextCompat.startActivityAsUser(this, intent, UserUtil.getUserHandle(UserUtil.USER_XSPACE));

这条语句就是用来启动双开应用的,startActivityAsUser(context,intent,UserHandler user);

这里需要传入一个UserHandler对象,如果传入的是999,就是分身User对象(0是主空间),可以用来启动双开应用。

双开应用和主分身空间_第1张图片

 

二.传入的参数是以userId的形式(多用于反射,因为反射中的参已经确定了是userId,需传入userId)

双开应用和主分身空间_第2张图片

以及下面这种:

 

你可能感兴趣的:(android,基础)