android 5.0 创建多用户 双开多开应用
Posted small_role
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 5.0 创建多用户 双开多开应用相关的知识,希望对你有一定的参考价值。
上一讲 讲了如何创建一个user
android 5.0 创建多用户 双开多开应用(1)
为什么要创建User 例如window 系统创建了一个user 会在当前用户下进行操作,而android 多用户体系就像window系统
创建了一个user之后在当前user下进行操作,就可以再安装或者启动一个应用。
有了一个user 之后在这个user下创建一个工作空间,在工作空间下安装 启动apk 就可以双开了。
具体类操作:
package android.app.admin; import android.content.ComponentName; import android.content.Intent; import android.content.IntentFilter; import android.net.ProxyInfo; import android.os.Bundle; import android.os.PersistableBundle; import android.os.RemoteCallback; import android.os.UserHandle; import java.util.List; /** * Internal IPC interface to the device policy service. * {@hide} */ interface IDevicePolicyManager { void setPasswordQuality(in ComponentName who, int quality, int userHandle); int getPasswordQuality(in ComponentName who, int userHandle); void setPasswordMinimumLength(in ComponentName who, int length, int userHandle); int getPasswordMinimumLength(in ComponentName who, int userHandle); void setPasswordMinimumUpperCase(in ComponentName who, int length, int userHandle); int getPasswordMinimumUpperCase(in ComponentName who, int userHandle); void setPasswordMinimumLowerCase(in ComponentName who, int length, int userHandle); int getPasswordMinimumLowerCase(in ComponentName who, int userHandle); void setPasswordMinimumLetters(in ComponentName who, int length, int userHandle); int getPasswordMinimumLetters(in ComponentName who, int userHandle); void setPasswordMinimumNumeric(in ComponentName who, int length, int userHandle); int getPasswordMinimumNumeric(in ComponentName who, int userHandle); void setPasswordMinimumSymbols(in ComponentName who, int length, int userHandle); int getPasswordMinimumSymbols(in ComponentName who, int userHandle); void setPasswordMinimumNonLetter(in ComponentName who, int length, int userHandle); int getPasswordMinimumNonLetter(in ComponentName who, int userHandle); void setPasswordHistoryLength(in ComponentName who, int length, int userHandle); int getPasswordHistoryLength(in ComponentName who, int userHandle); void setPasswordExpirationTimeout(in ComponentName who, long expiration, int userHandle); long getPasswordExpirationTimeout(in ComponentName who, int userHandle); long getPasswordExpiration(in ComponentName who, int userHandle); boolean isActivePasswordSufficient(int userHandle); int getCurrentFailedPasswordAttempts(int userHandle); int getProfileWithMinimumFailedPasswordsForWipe(int userHandle); void setMaximumFailedPasswordsForWipe(in ComponentName admin, int num, int userHandle); int getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle); boolean resetPassword(String password, int flags, int userHandle); void setMaximumTimeToLock(in ComponentName who, long timeMs, int userHandle); long getMaximumTimeToLock(in ComponentName who, int userHandle); void lockNow(); void wipeData(int flags, int userHandle); ComponentName setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList, int userHandle); ComponentName getGlobalProxyAdmin(int userHandle); void setRecommendedGlobalProxy(in ComponentName admin, in ProxyInfo proxyInfo); int setStorageEncryption(in ComponentName who, boolean encrypt, int userHandle); boolean getStorageEncryption(in ComponentName who, int userHandle); int getStorageEncryptionStatus(int userHandle); void setCameraDisabled(in ComponentName who, boolean disabled, int userHandle); boolean getCameraDisabled(in ComponentName who, int userHandle); void setScreenCaptureDisabled(in ComponentName who, int userHandle, boolean disabled); boolean getScreenCaptureDisabled(in ComponentName who, int userHandle); void setKeyguardDisabledFeatures(in ComponentName who, int which, int userHandle); int getKeyguardDisabledFeatures(in ComponentName who, int userHandle); void setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle); boolean isAdminActive(in ComponentName policyReceiver, int userHandle); List<ComponentName> getActiveAdmins(int userHandle); boolean packageHasActiveAdmins(String packageName, int userHandle); void getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle); void removeActiveAdmin(in ComponentName policyReceiver, int userHandle); boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle); void setActivePasswordState(int quality, int length, int letters, int uppercase, int lowercase, int numbers, int symbols, int nonletter, int userHandle); void reportFailedPasswordAttempt(int userHandle); void reportSuccessfulPasswordAttempt(int userHandle); boolean setDeviceOwner(String packageName, String ownerName); boolean isDeviceOwner(String packageName); String getDeviceOwner(); String getDeviceOwnerName(); void clearDeviceOwner(String packageName); boolean setProfileOwner(in ComponentName who, String ownerName, int userHandle); ComponentName getProfileOwner(int userHandle); String getProfileOwnerName(int userHandle); void setProfileEnabled(in ComponentName who);//启动工作空间 void setProfileName(in ComponentName who, String profileName) void clearProfileOwner(in ComponentName who); boolean hasUserSetupCompleted(); boolean installCaCert(in ComponentName admin, in byte[] certBuffer); void uninstallCaCert(in ComponentName admin, in String alias); void enforceCanManageCaCerts(in ComponentName admin); boolean installKeyPair(in ComponentName who, in byte[] privKeyBuffer, in byte[] certBuffer, String alias); void addPersistentPreferredActivity(in ComponentName admin, in IntentFilter filter, in ComponentName activity); void clearPackagePersistentPreferredActivities(in ComponentName admin, String packageName); void setApplicationRestrictions(in ComponentName who, in String packageName, in Bundle settings); Bundle getApplicationRestrictions(in ComponentName who, in String packageName); void setRestrictionsProvider(in ComponentName who, in ComponentName provider); ComponentName getRestrictionsProvider(int userHandle); void setUserRestriction(in ComponentName who, in String key, boolean enable); void addCrossProfileIntentFilter(in ComponentName admin, in IntentFilter filter, int flags);//创建工作空间 void clearCrossProfileIntentFilters(in ComponentName admin); boolean setPermittedAccessibilityServices(in ComponentName admin,in List packageList); List getPermittedAccessibilityServices(in ComponentName admin); List getPermittedAccessibilityServicesForUser(int userId); boolean setPermittedInputMethods(in ComponentName admin,in List packageList); List getPermittedInputMethods(in ComponentName admin); List getPermittedInputMethodsForCurrentUser(); boolean setApplicationHidden(in ComponentName admin, in String packageName, boolean hidden); boolean isApplicationHidden(in ComponentName admin, in String packageName); UserHandle createUser(in ComponentName who, in String name); UserHandle createAndInitializeUser(in ComponentName who, in String name, in String profileOwnerName, in ComponentName profileOwnerComponent, in Bundle adminExtras); boolean removeUser(in ComponentName who, in UserHandle userHandle); boolean switchUser(in ComponentName who, in UserHandle userHandle); void enableSystemApp(in ComponentName admin, in String packageName);//设置app的状态 int enableSystemAppWithIntent(in ComponentName admin, in Intent intent); void setAccountManagementDisabled(in ComponentName who, in String accountType, in boolean disabled); String[] getAccountTypesWithManagementDisabled(); String[] getAccountTypesWithManagementDisabledAsUser(int userId); void setLockTaskPackages(in ComponentName who, in String[] packages); String[] getLockTaskPackages(in ComponentName who); boolean isLockTaskPermitted(in String pkg); void setGlobalSetting(in ComponentName who, in String setting, in String value); void setSecureSetting(in ComponentName who, in String setting, in String value); void setMasterVolumeMuted(in ComponentName admin, boolean on); boolean isMasterVolumeMuted(in ComponentName admin); void notifyLockTaskModeChanged(boolean isEnabled, String pkg, int userId); void setUninstallBlocked(in ComponentName admin, in String packageName, boolean uninstallBlocked); boolean isUninstallBlocked(in ComponentName admin, in String packageName); void setCrossProfileCallerIdDisabled(in ComponentName who, boolean disabled); boolean getCrossProfileCallerIdDisabled(in ComponentName who); boolean getCrossProfileCallerIdDisabledForUser(int userId); void setTrustAgentConfiguration(in ComponentName admin, in ComponentName agent, in PersistableBundle args, int userId); List<PersistableBundle> getTrustAgentConfiguration(in ComponentName admin, in ComponentName agent, int userId); boolean addCrossProfileWidgetProvider(in ComponentName admin, String packageName); boolean removeCrossProfileWidgetProvider(in ComponentName admin, String packageName); List<String> getCrossProfileWidgetProviders(in ComponentName admin); void setAutoTimeRequired(in ComponentName who, int userHandle, boolean required); boolean getAutoTimeRequired(); boolean isRemovingAdmin(in ComponentName adminReceiver, int userHandle); }
以上是关于android 5.0 创建多用户 双开多开应用的主要内容,如果未能解决你的问题,请参考以下文章