• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2 **
3 ** Copyright 2010, The Android Open Source Project
4 **
5 ** Licensed under the Apache License, Version 2.0 (the "License");
6 ** you may not use this file except in compliance with the License.
7 ** You may obtain a copy of the License at
8 **
9 **     http://www.apache.org/licenses/LICENSE-2.0
10 **
11 ** Unless required by applicable law or agreed to in writing, software
12 ** distributed under the License is distributed on an "AS IS" BASIS,
13 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ** See the License for the specific language governing permissions and
15 ** limitations under the License.
16 */
17 
18 package android.app.admin;
19 
20 import android.app.admin.NetworkEvent;
21 import android.app.IApplicationThread;
22 import android.app.IServiceConnection;
23 import android.app.admin.SystemUpdateInfo;
24 import android.app.admin.SystemUpdatePolicy;
25 import android.app.admin.PasswordMetrics;
26 import android.content.ComponentName;
27 import android.content.Intent;
28 import android.content.IntentFilter;
29 import android.content.pm.ParceledListSlice;
30 import android.content.pm.StringParceledListSlice;
31 import android.graphics.Bitmap;
32 import android.net.ProxyInfo;
33 import android.net.Uri;
34 import android.os.Bundle;
35 import android.os.PersistableBundle;
36 import android.os.RemoteCallback;
37 import android.os.UserHandle;
38 
39 import java.util.List;
40 
41 /**
42  * Internal IPC interface to the device policy service.
43  * {@hide}
44  */
45 interface IDevicePolicyManager {
setPasswordQuality(in ComponentName who, int quality, boolean parent)46     void setPasswordQuality(in ComponentName who, int quality, boolean parent);
getPasswordQuality(in ComponentName who, int userHandle, boolean parent)47     int getPasswordQuality(in ComponentName who, int userHandle, boolean parent);
48 
setPasswordMinimumLength(in ComponentName who, int length, boolean parent)49     void setPasswordMinimumLength(in ComponentName who, int length, boolean parent);
getPasswordMinimumLength(in ComponentName who, int userHandle, boolean parent)50     int getPasswordMinimumLength(in ComponentName who, int userHandle, boolean parent);
51 
setPasswordMinimumUpperCase(in ComponentName who, int length, boolean parent)52     void setPasswordMinimumUpperCase(in ComponentName who, int length, boolean parent);
getPasswordMinimumUpperCase(in ComponentName who, int userHandle, boolean parent)53     int getPasswordMinimumUpperCase(in ComponentName who, int userHandle, boolean parent);
54 
setPasswordMinimumLowerCase(in ComponentName who, int length, boolean parent)55     void setPasswordMinimumLowerCase(in ComponentName who, int length, boolean parent);
getPasswordMinimumLowerCase(in ComponentName who, int userHandle, boolean parent)56     int getPasswordMinimumLowerCase(in ComponentName who, int userHandle, boolean parent);
57 
setPasswordMinimumLetters(in ComponentName who, int length, boolean parent)58     void setPasswordMinimumLetters(in ComponentName who, int length, boolean parent);
getPasswordMinimumLetters(in ComponentName who, int userHandle, boolean parent)59     int getPasswordMinimumLetters(in ComponentName who, int userHandle, boolean parent);
60 
setPasswordMinimumNumeric(in ComponentName who, int length, boolean parent)61     void setPasswordMinimumNumeric(in ComponentName who, int length, boolean parent);
getPasswordMinimumNumeric(in ComponentName who, int userHandle, boolean parent)62     int getPasswordMinimumNumeric(in ComponentName who, int userHandle, boolean parent);
63 
setPasswordMinimumSymbols(in ComponentName who, int length, boolean parent)64     void setPasswordMinimumSymbols(in ComponentName who, int length, boolean parent);
getPasswordMinimumSymbols(in ComponentName who, int userHandle, boolean parent)65     int getPasswordMinimumSymbols(in ComponentName who, int userHandle, boolean parent);
66 
setPasswordMinimumNonLetter(in ComponentName who, int length, boolean parent)67     void setPasswordMinimumNonLetter(in ComponentName who, int length, boolean parent);
getPasswordMinimumNonLetter(in ComponentName who, int userHandle, boolean parent)68     int getPasswordMinimumNonLetter(in ComponentName who, int userHandle, boolean parent);
69 
setPasswordHistoryLength(in ComponentName who, int length, boolean parent)70     void setPasswordHistoryLength(in ComponentName who, int length, boolean parent);
getPasswordHistoryLength(in ComponentName who, int userHandle, boolean parent)71     int getPasswordHistoryLength(in ComponentName who, int userHandle, boolean parent);
72 
setPasswordExpirationTimeout(in ComponentName who, long expiration, boolean parent)73     void setPasswordExpirationTimeout(in ComponentName who, long expiration, boolean parent);
getPasswordExpirationTimeout(in ComponentName who, int userHandle, boolean parent)74     long getPasswordExpirationTimeout(in ComponentName who, int userHandle, boolean parent);
75 
getPasswordExpiration(in ComponentName who, int userHandle, boolean parent)76     long getPasswordExpiration(in ComponentName who, int userHandle, boolean parent);
77 
isActivePasswordSufficient(int userHandle, boolean parent)78     boolean isActivePasswordSufficient(int userHandle, boolean parent);
isProfileActivePasswordSufficientForParent(int userHandle)79     boolean isProfileActivePasswordSufficientForParent(int userHandle);
getCurrentFailedPasswordAttempts(int userHandle, boolean parent)80     int getCurrentFailedPasswordAttempts(int userHandle, boolean parent);
getProfileWithMinimumFailedPasswordsForWipe(int userHandle, boolean parent)81     int getProfileWithMinimumFailedPasswordsForWipe(int userHandle, boolean parent);
82 
setMaximumFailedPasswordsForWipe(in ComponentName admin, int num, boolean parent)83     void setMaximumFailedPasswordsForWipe(in ComponentName admin, int num, boolean parent);
getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle, boolean parent)84     int getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle, boolean parent);
85 
resetPassword(String password, int flags)86     boolean resetPassword(String password, int flags);
87 
setMaximumTimeToLock(in ComponentName who, long timeMs, boolean parent)88     void setMaximumTimeToLock(in ComponentName who, long timeMs, boolean parent);
getMaximumTimeToLock(in ComponentName who, int userHandle, boolean parent)89     long getMaximumTimeToLock(in ComponentName who, int userHandle, boolean parent);
getMaximumTimeToLockForUserAndProfiles(int userHandle)90     long getMaximumTimeToLockForUserAndProfiles(int userHandle);
91 
setRequiredStrongAuthTimeout(in ComponentName who, long timeMs, boolean parent)92     void setRequiredStrongAuthTimeout(in ComponentName who, long timeMs, boolean parent);
getRequiredStrongAuthTimeout(in ComponentName who, int userId, boolean parent)93     long getRequiredStrongAuthTimeout(in ComponentName who, int userId, boolean parent);
94 
lockNow(int flags, boolean parent)95     void lockNow(int flags, boolean parent);
96 
wipeData(int flags)97     void wipeData(int flags);
98 
setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList)99     ComponentName setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList);
getGlobalProxyAdmin(int userHandle)100     ComponentName getGlobalProxyAdmin(int userHandle);
setRecommendedGlobalProxy(in ComponentName admin, in ProxyInfo proxyInfo)101     void setRecommendedGlobalProxy(in ComponentName admin, in ProxyInfo proxyInfo);
102 
setStorageEncryption(in ComponentName who, boolean encrypt)103     int setStorageEncryption(in ComponentName who, boolean encrypt);
getStorageEncryption(in ComponentName who, int userHandle)104     boolean getStorageEncryption(in ComponentName who, int userHandle);
getStorageEncryptionStatus(in String callerPackage, int userHandle)105     int getStorageEncryptionStatus(in String callerPackage, int userHandle);
106 
requestBugreport(in ComponentName who)107     boolean requestBugreport(in ComponentName who);
108 
setCameraDisabled(in ComponentName who, boolean disabled)109     void setCameraDisabled(in ComponentName who, boolean disabled);
getCameraDisabled(in ComponentName who, int userHandle)110     boolean getCameraDisabled(in ComponentName who, int userHandle);
111 
setScreenCaptureDisabled(in ComponentName who, boolean disabled)112     void setScreenCaptureDisabled(in ComponentName who, boolean disabled);
getScreenCaptureDisabled(in ComponentName who, int userHandle)113     boolean getScreenCaptureDisabled(in ComponentName who, int userHandle);
114 
setKeyguardDisabledFeatures(in ComponentName who, int which, boolean parent)115     void setKeyguardDisabledFeatures(in ComponentName who, int which, boolean parent);
getKeyguardDisabledFeatures(in ComponentName who, int userHandle, boolean parent)116     int getKeyguardDisabledFeatures(in ComponentName who, int userHandle, boolean parent);
117 
setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle)118     void setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle);
isAdminActive(in ComponentName policyReceiver, int userHandle)119     boolean isAdminActive(in ComponentName policyReceiver, int userHandle);
getActiveAdmins(int userHandle)120     List<ComponentName> getActiveAdmins(int userHandle);
packageHasActiveAdmins(String packageName, int userHandle)121     boolean packageHasActiveAdmins(String packageName, int userHandle);
getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle)122     void getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle);
removeActiveAdmin(in ComponentName policyReceiver, int userHandle)123     void removeActiveAdmin(in ComponentName policyReceiver, int userHandle);
forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle)124     void forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle);
hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle)125     boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle);
126 
setActivePasswordState(in PasswordMetrics metrics, int userHandle)127     void setActivePasswordState(in PasswordMetrics metrics, int userHandle);
reportPasswordChanged(int userId)128     void reportPasswordChanged(int userId);
reportFailedPasswordAttempt(int userHandle)129     void reportFailedPasswordAttempt(int userHandle);
reportSuccessfulPasswordAttempt(int userHandle)130     void reportSuccessfulPasswordAttempt(int userHandle);
reportFailedFingerprintAttempt(int userHandle)131     void reportFailedFingerprintAttempt(int userHandle);
reportSuccessfulFingerprintAttempt(int userHandle)132     void reportSuccessfulFingerprintAttempt(int userHandle);
reportKeyguardDismissed(int userHandle)133     void reportKeyguardDismissed(int userHandle);
reportKeyguardSecured(int userHandle)134     void reportKeyguardSecured(int userHandle);
135 
setDeviceOwner(in ComponentName who, String ownerName, int userId)136     boolean setDeviceOwner(in ComponentName who, String ownerName, int userId);
getDeviceOwnerComponent(boolean callingUserOnly)137     ComponentName getDeviceOwnerComponent(boolean callingUserOnly);
hasDeviceOwner()138     boolean hasDeviceOwner();
getDeviceOwnerName()139     String getDeviceOwnerName();
clearDeviceOwner(String packageName)140     void clearDeviceOwner(String packageName);
getDeviceOwnerUserId()141     int getDeviceOwnerUserId();
142 
setProfileOwner(in ComponentName who, String ownerName, int userHandle)143     boolean setProfileOwner(in ComponentName who, String ownerName, int userHandle);
getProfileOwner(int userHandle)144     ComponentName getProfileOwner(int userHandle);
getProfileOwnerName(int userHandle)145     String getProfileOwnerName(int userHandle);
setProfileEnabled(in ComponentName who)146     void setProfileEnabled(in ComponentName who);
setProfileName(in ComponentName who, String profileName)147     void setProfileName(in ComponentName who, String profileName);
clearProfileOwner(in ComponentName who)148     void clearProfileOwner(in ComponentName who);
hasUserSetupCompleted()149     boolean hasUserSetupCompleted();
150 
setDeviceOwnerLockScreenInfo(in ComponentName who, CharSequence deviceOwnerInfo)151     void setDeviceOwnerLockScreenInfo(in ComponentName who, CharSequence deviceOwnerInfo);
getDeviceOwnerLockScreenInfo()152     CharSequence getDeviceOwnerLockScreenInfo();
153 
setPackagesSuspended(in ComponentName admin, in String callerPackage, in String[] packageNames, boolean suspended)154     String[] setPackagesSuspended(in ComponentName admin, in String callerPackage, in String[] packageNames, boolean suspended);
isPackageSuspended(in ComponentName admin, in String callerPackage, String packageName)155     boolean isPackageSuspended(in ComponentName admin, in String callerPackage, String packageName);
156 
installCaCert(in ComponentName admin, String callerPackage, in byte[] certBuffer)157     boolean installCaCert(in ComponentName admin, String callerPackage, in byte[] certBuffer);
uninstallCaCerts(in ComponentName admin, String callerPackage, in String[] aliases)158     void uninstallCaCerts(in ComponentName admin, String callerPackage, in String[] aliases);
enforceCanManageCaCerts(in ComponentName admin, in String callerPackage)159     void enforceCanManageCaCerts(in ComponentName admin, in String callerPackage);
approveCaCert(in String alias, int userHandle, boolean approval)160     boolean approveCaCert(in String alias, int userHandle, boolean approval);
isCaCertApproved(in String alias, int userHandle)161     boolean isCaCertApproved(in String alias, int userHandle);
162 
installKeyPair(in ComponentName who, in String callerPackage, in byte[] privKeyBuffer, in byte[] certBuffer, in byte[] certChainBuffer, String alias, boolean requestAccess)163     boolean installKeyPair(in ComponentName who, in String callerPackage, in byte[] privKeyBuffer,
164             in byte[] certBuffer, in byte[] certChainBuffer, String alias, boolean requestAccess);
removeKeyPair(in ComponentName who, in String callerPackage, String alias)165     boolean removeKeyPair(in ComponentName who, in String callerPackage, String alias);
choosePrivateKeyAlias(int uid, in Uri uri, in String alias, IBinder aliasCallback)166     void choosePrivateKeyAlias(int uid, in Uri uri, in String alias, IBinder aliasCallback);
167 
setDelegatedScopes(in ComponentName who, in String delegatePackage, in List<String> scopes)168     void setDelegatedScopes(in ComponentName who, in String delegatePackage, in List<String> scopes);
getDelegatedScopes(in ComponentName who, String delegatePackage)169     List<String> getDelegatedScopes(in ComponentName who, String delegatePackage);
getDelegatePackages(in ComponentName who, String scope)170     List<String> getDelegatePackages(in ComponentName who, String scope);
171 
setCertInstallerPackage(in ComponentName who, String installerPackage)172     void setCertInstallerPackage(in ComponentName who, String installerPackage);
getCertInstallerPackage(in ComponentName who)173     String getCertInstallerPackage(in ComponentName who);
174 
setAlwaysOnVpnPackage(in ComponentName who, String vpnPackage, boolean lockdown)175     boolean setAlwaysOnVpnPackage(in ComponentName who, String vpnPackage, boolean lockdown);
getAlwaysOnVpnPackage(in ComponentName who)176     String getAlwaysOnVpnPackage(in ComponentName who);
177 
addPersistentPreferredActivity(in ComponentName admin, in IntentFilter filter, in ComponentName activity)178     void addPersistentPreferredActivity(in ComponentName admin, in IntentFilter filter, in ComponentName activity);
clearPackagePersistentPreferredActivities(in ComponentName admin, String packageName)179     void clearPackagePersistentPreferredActivities(in ComponentName admin, String packageName);
180 
setApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName, in Bundle settings)181     void setApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName, in Bundle settings);
getApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName)182     Bundle getApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName);
setApplicationRestrictionsManagingPackage(in ComponentName admin, in String packageName)183     boolean setApplicationRestrictionsManagingPackage(in ComponentName admin, in String packageName);
getApplicationRestrictionsManagingPackage(in ComponentName admin)184     String getApplicationRestrictionsManagingPackage(in ComponentName admin);
isCallerApplicationRestrictionsManagingPackage(in String callerPackage)185     boolean isCallerApplicationRestrictionsManagingPackage(in String callerPackage);
186 
setRestrictionsProvider(in ComponentName who, in ComponentName provider)187     void setRestrictionsProvider(in ComponentName who, in ComponentName provider);
getRestrictionsProvider(int userHandle)188     ComponentName getRestrictionsProvider(int userHandle);
189 
setUserRestriction(in ComponentName who, in String key, boolean enable)190     void setUserRestriction(in ComponentName who, in String key, boolean enable);
getUserRestrictions(in ComponentName who)191     Bundle getUserRestrictions(in ComponentName who);
addCrossProfileIntentFilter(in ComponentName admin, in IntentFilter filter, int flags)192     void addCrossProfileIntentFilter(in ComponentName admin, in IntentFilter filter, int flags);
clearCrossProfileIntentFilters(in ComponentName admin)193     void clearCrossProfileIntentFilters(in ComponentName admin);
194 
setPermittedAccessibilityServices(in ComponentName admin,in List packageList)195     boolean setPermittedAccessibilityServices(in ComponentName admin,in List packageList);
getPermittedAccessibilityServices(in ComponentName admin)196     List getPermittedAccessibilityServices(in ComponentName admin);
getPermittedAccessibilityServicesForUser(int userId)197     List getPermittedAccessibilityServicesForUser(int userId);
isAccessibilityServicePermittedByAdmin(in ComponentName admin, String packageName, int userId)198     boolean isAccessibilityServicePermittedByAdmin(in ComponentName admin, String packageName, int userId);
199 
setPermittedInputMethods(in ComponentName admin,in List packageList)200     boolean setPermittedInputMethods(in ComponentName admin,in List packageList);
getPermittedInputMethods(in ComponentName admin)201     List getPermittedInputMethods(in ComponentName admin);
getPermittedInputMethodsForCurrentUser()202     List getPermittedInputMethodsForCurrentUser();
isInputMethodPermittedByAdmin(in ComponentName admin, String packageName, int userId)203     boolean isInputMethodPermittedByAdmin(in ComponentName admin, String packageName, int userId);
204 
setPermittedCrossProfileNotificationListeners(in ComponentName admin, in List<String> packageList)205     boolean setPermittedCrossProfileNotificationListeners(in ComponentName admin, in List<String> packageList);
getPermittedCrossProfileNotificationListeners(in ComponentName admin)206     List<String> getPermittedCrossProfileNotificationListeners(in ComponentName admin);
isNotificationListenerServicePermitted(in String packageName, int userId)207     boolean isNotificationListenerServicePermitted(in String packageName, int userId);
208 
createAdminSupportIntent(in String restriction)209     Intent createAdminSupportIntent(in String restriction);
setApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean hidden)210     boolean setApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean hidden);
isApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName)211     boolean isApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName);
212 
createAndManageUser(in ComponentName who, in String name, in ComponentName profileOwner, in PersistableBundle adminExtras, in int flags)213     UserHandle createAndManageUser(in ComponentName who, in String name, in ComponentName profileOwner, in PersistableBundle adminExtras, in int flags);
removeUser(in ComponentName who, in UserHandle userHandle)214     boolean removeUser(in ComponentName who, in UserHandle userHandle);
switchUser(in ComponentName who, in UserHandle userHandle)215     boolean switchUser(in ComponentName who, in UserHandle userHandle);
216 
enableSystemApp(in ComponentName admin, in String callerPackage, in String packageName)217     void enableSystemApp(in ComponentName admin, in String callerPackage, in String packageName);
enableSystemAppWithIntent(in ComponentName admin, in String callerPackage, in Intent intent)218     int enableSystemAppWithIntent(in ComponentName admin, in String callerPackage, in Intent intent);
219 
setAccountManagementDisabled(in ComponentName who, in String accountType, in boolean disabled)220     void setAccountManagementDisabled(in ComponentName who, in String accountType, in boolean disabled);
getAccountTypesWithManagementDisabled()221     String[] getAccountTypesWithManagementDisabled();
getAccountTypesWithManagementDisabledAsUser(int userId)222     String[] getAccountTypesWithManagementDisabledAsUser(int userId);
223 
setLockTaskPackages(in ComponentName who, in String[] packages)224     void setLockTaskPackages(in ComponentName who, in String[] packages);
getLockTaskPackages(in ComponentName who)225     String[] getLockTaskPackages(in ComponentName who);
isLockTaskPermitted(in String pkg)226     boolean isLockTaskPermitted(in String pkg);
227 
setGlobalSetting(in ComponentName who, in String setting, in String value)228     void setGlobalSetting(in ComponentName who, in String setting, in String value);
setSecureSetting(in ComponentName who, in String setting, in String value)229     void setSecureSetting(in ComponentName who, in String setting, in String value);
230 
setMasterVolumeMuted(in ComponentName admin, boolean on)231     void setMasterVolumeMuted(in ComponentName admin, boolean on);
isMasterVolumeMuted(in ComponentName admin)232     boolean isMasterVolumeMuted(in ComponentName admin);
233 
notifyLockTaskModeChanged(boolean isEnabled, String pkg, int userId)234     void notifyLockTaskModeChanged(boolean isEnabled, String pkg, int userId);
235 
setUninstallBlocked(in ComponentName admin, in String callerPackage, in String packageName, boolean uninstallBlocked)236     void setUninstallBlocked(in ComponentName admin, in String callerPackage, in String packageName, boolean uninstallBlocked);
isUninstallBlocked(in ComponentName admin, in String packageName)237     boolean isUninstallBlocked(in ComponentName admin, in String packageName);
238 
setCrossProfileCallerIdDisabled(in ComponentName who, boolean disabled)239     void setCrossProfileCallerIdDisabled(in ComponentName who, boolean disabled);
getCrossProfileCallerIdDisabled(in ComponentName who)240     boolean getCrossProfileCallerIdDisabled(in ComponentName who);
getCrossProfileCallerIdDisabledForUser(int userId)241     boolean getCrossProfileCallerIdDisabledForUser(int userId);
setCrossProfileContactsSearchDisabled(in ComponentName who, boolean disabled)242     void setCrossProfileContactsSearchDisabled(in ComponentName who, boolean disabled);
getCrossProfileContactsSearchDisabled(in ComponentName who)243     boolean getCrossProfileContactsSearchDisabled(in ComponentName who);
getCrossProfileContactsSearchDisabledForUser(int userId)244     boolean getCrossProfileContactsSearchDisabledForUser(int userId);
startManagedQuickContact(String lookupKey, long contactId, boolean isContactIdIgnored, long directoryId, in Intent originalIntent)245     void startManagedQuickContact(String lookupKey, long contactId, boolean isContactIdIgnored, long directoryId, in Intent originalIntent);
246 
setBluetoothContactSharingDisabled(in ComponentName who, boolean disabled)247     void setBluetoothContactSharingDisabled(in ComponentName who, boolean disabled);
getBluetoothContactSharingDisabled(in ComponentName who)248     boolean getBluetoothContactSharingDisabled(in ComponentName who);
getBluetoothContactSharingDisabledForUser(int userId)249     boolean getBluetoothContactSharingDisabledForUser(int userId);
250 
setTrustAgentConfiguration(in ComponentName admin, in ComponentName agent, in PersistableBundle args, boolean parent)251     void setTrustAgentConfiguration(in ComponentName admin, in ComponentName agent,
252             in PersistableBundle args, boolean parent);
getTrustAgentConfiguration(in ComponentName admin, in ComponentName agent, int userId, boolean parent)253     List<PersistableBundle> getTrustAgentConfiguration(in ComponentName admin,
254             in ComponentName agent, int userId, boolean parent);
255 
addCrossProfileWidgetProvider(in ComponentName admin, String packageName)256     boolean addCrossProfileWidgetProvider(in ComponentName admin, String packageName);
removeCrossProfileWidgetProvider(in ComponentName admin, String packageName)257     boolean removeCrossProfileWidgetProvider(in ComponentName admin, String packageName);
getCrossProfileWidgetProviders(in ComponentName admin)258     List<String> getCrossProfileWidgetProviders(in ComponentName admin);
259 
setAutoTimeRequired(in ComponentName who, boolean required)260     void setAutoTimeRequired(in ComponentName who, boolean required);
getAutoTimeRequired()261     boolean getAutoTimeRequired();
262 
setForceEphemeralUsers(in ComponentName who, boolean forceEpehemeralUsers)263     void setForceEphemeralUsers(in ComponentName who, boolean forceEpehemeralUsers);
getForceEphemeralUsers(in ComponentName who)264     boolean getForceEphemeralUsers(in ComponentName who);
265 
isRemovingAdmin(in ComponentName adminReceiver, int userHandle)266     boolean isRemovingAdmin(in ComponentName adminReceiver, int userHandle);
267 
setUserIcon(in ComponentName admin, in Bitmap icon)268     void setUserIcon(in ComponentName admin, in Bitmap icon);
269 
setSystemUpdatePolicy(in ComponentName who, in SystemUpdatePolicy policy)270     void setSystemUpdatePolicy(in ComponentName who, in SystemUpdatePolicy policy);
getSystemUpdatePolicy()271     SystemUpdatePolicy getSystemUpdatePolicy();
272 
setKeyguardDisabled(in ComponentName admin, boolean disabled)273     boolean setKeyguardDisabled(in ComponentName admin, boolean disabled);
setStatusBarDisabled(in ComponentName who, boolean disabled)274     boolean setStatusBarDisabled(in ComponentName who, boolean disabled);
getDoNotAskCredentialsOnBoot()275     boolean getDoNotAskCredentialsOnBoot();
276 
notifyPendingSystemUpdate(in SystemUpdateInfo info)277     void notifyPendingSystemUpdate(in SystemUpdateInfo info);
getPendingSystemUpdate(in ComponentName admin)278     SystemUpdateInfo getPendingSystemUpdate(in ComponentName admin);
279 
setPermissionPolicy(in ComponentName admin, in String callerPackage, int policy)280     void setPermissionPolicy(in ComponentName admin, in String callerPackage, int policy);
getPermissionPolicy(in ComponentName admin)281     int  getPermissionPolicy(in ComponentName admin);
setPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission, int grantState)282     boolean setPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName,
283             String permission, int grantState);
getPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission)284     int getPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission);
isProvisioningAllowed(String action, String packageName)285     boolean isProvisioningAllowed(String action, String packageName);
checkProvisioningPreCondition(String action, String packageName)286     int checkProvisioningPreCondition(String action, String packageName);
setKeepUninstalledPackages(in ComponentName admin, in String callerPackage, in List<String> packageList)287     void setKeepUninstalledPackages(in ComponentName admin, in String callerPackage, in List<String> packageList);
getKeepUninstalledPackages(in ComponentName admin, in String callerPackage)288     List<String> getKeepUninstalledPackages(in ComponentName admin, in String callerPackage);
isManagedProfile(in ComponentName admin)289     boolean isManagedProfile(in ComponentName admin);
isSystemOnlyUser(in ComponentName admin)290     boolean isSystemOnlyUser(in ComponentName admin);
getWifiMacAddress(in ComponentName admin)291     String getWifiMacAddress(in ComponentName admin);
reboot(in ComponentName admin)292     void reboot(in ComponentName admin);
293 
setShortSupportMessage(in ComponentName admin, in CharSequence message)294     void setShortSupportMessage(in ComponentName admin, in CharSequence message);
getShortSupportMessage(in ComponentName admin)295     CharSequence getShortSupportMessage(in ComponentName admin);
setLongSupportMessage(in ComponentName admin, in CharSequence message)296     void setLongSupportMessage(in ComponentName admin, in CharSequence message);
getLongSupportMessage(in ComponentName admin)297     CharSequence getLongSupportMessage(in ComponentName admin);
298 
getShortSupportMessageForUser(in ComponentName admin, int userHandle)299     CharSequence getShortSupportMessageForUser(in ComponentName admin, int userHandle);
getLongSupportMessageForUser(in ComponentName admin, int userHandle)300     CharSequence getLongSupportMessageForUser(in ComponentName admin, int userHandle);
301 
isSeparateProfileChallengeAllowed(int userHandle)302     boolean isSeparateProfileChallengeAllowed(int userHandle);
303 
setOrganizationColor(in ComponentName admin, in int color)304     void setOrganizationColor(in ComponentName admin, in int color);
setOrganizationColorForUser(in int color, in int userId)305     void setOrganizationColorForUser(in int color, in int userId);
getOrganizationColor(in ComponentName admin)306     int getOrganizationColor(in ComponentName admin);
getOrganizationColorForUser(int userHandle)307     int getOrganizationColorForUser(int userHandle);
308 
setOrganizationName(in ComponentName admin, in CharSequence title)309     void setOrganizationName(in ComponentName admin, in CharSequence title);
getOrganizationName(in ComponentName admin)310     CharSequence getOrganizationName(in ComponentName admin);
getDeviceOwnerOrganizationName()311     CharSequence getDeviceOwnerOrganizationName();
getOrganizationNameForUser(int userHandle)312     CharSequence getOrganizationNameForUser(int userHandle);
313 
getUserProvisioningState()314     int getUserProvisioningState();
setUserProvisioningState(int state, int userHandle)315     void setUserProvisioningState(int state, int userHandle);
316 
setAffiliationIds(in ComponentName admin, in List<String> ids)317     void setAffiliationIds(in ComponentName admin, in List<String> ids);
getAffiliationIds(in ComponentName admin)318     List<String> getAffiliationIds(in ComponentName admin);
isAffiliatedUser()319     boolean isAffiliatedUser();
320 
setSecurityLoggingEnabled(in ComponentName admin, boolean enabled)321     void setSecurityLoggingEnabled(in ComponentName admin, boolean enabled);
isSecurityLoggingEnabled(in ComponentName admin)322     boolean isSecurityLoggingEnabled(in ComponentName admin);
retrieveSecurityLogs(in ComponentName admin)323     ParceledListSlice retrieveSecurityLogs(in ComponentName admin);
retrievePreRebootSecurityLogs(in ComponentName admin)324     ParceledListSlice retrievePreRebootSecurityLogs(in ComponentName admin);
325 
isUninstallInQueue(String packageName)326     boolean isUninstallInQueue(String packageName);
uninstallPackageWithActiveAdmins(String packageName)327     void uninstallPackageWithActiveAdmins(String packageName);
328 
isDeviceProvisioned()329     boolean isDeviceProvisioned();
isDeviceProvisioningConfigApplied()330     boolean isDeviceProvisioningConfigApplied();
setDeviceProvisioningConfigApplied()331     void setDeviceProvisioningConfigApplied();
332 
forceUpdateUserSetupComplete()333     void forceUpdateUserSetupComplete();
334 
setBackupServiceEnabled(in ComponentName admin, boolean enabled)335     void setBackupServiceEnabled(in ComponentName admin, boolean enabled);
isBackupServiceEnabled(in ComponentName admin)336     boolean isBackupServiceEnabled(in ComponentName admin);
337 
setNetworkLoggingEnabled(in ComponentName admin, boolean enabled)338     void setNetworkLoggingEnabled(in ComponentName admin, boolean enabled);
isNetworkLoggingEnabled(in ComponentName admin)339     boolean isNetworkLoggingEnabled(in ComponentName admin);
retrieveNetworkLogs(in ComponentName admin, long batchToken)340     List<NetworkEvent> retrieveNetworkLogs(in ComponentName admin, long batchToken);
341 
bindDeviceAdminServiceAsUser(in ComponentName admin, IApplicationThread caller, IBinder token, in Intent service, IServiceConnection connection, int flags, int targetUserId)342     boolean bindDeviceAdminServiceAsUser(in ComponentName admin,
343         IApplicationThread caller, IBinder token, in Intent service,
344         IServiceConnection connection, int flags, int targetUserId);
getBindDeviceAdminTargetUsers(in ComponentName admin)345     List<UserHandle> getBindDeviceAdminTargetUsers(in ComponentName admin);
346 
getLastSecurityLogRetrievalTime()347     long getLastSecurityLogRetrievalTime();
getLastBugReportRequestTime()348     long getLastBugReportRequestTime();
getLastNetworkLogRetrievalTime()349     long getLastNetworkLogRetrievalTime();
350 
setResetPasswordToken(in ComponentName admin, in byte[] token)351     boolean setResetPasswordToken(in ComponentName admin, in byte[] token);
clearResetPasswordToken(in ComponentName admin)352     boolean clearResetPasswordToken(in ComponentName admin);
isResetPasswordTokenActive(in ComponentName admin)353     boolean isResetPasswordTokenActive(in ComponentName admin);
resetPasswordWithToken(in ComponentName admin, String password, in byte[] token, int flags)354     boolean resetPasswordWithToken(in ComponentName admin, String password, in byte[] token, int flags);
355 
isCurrentInputMethodSetByOwner()356     boolean isCurrentInputMethodSetByOwner();
getOwnerInstalledCaCerts(in UserHandle user)357     StringParceledListSlice getOwnerInstalledCaCerts(in UserHandle user);
358 }
359