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.accounts.Account; 21 import android.app.admin.DevicePolicyDrawableResource; 22 import android.app.admin.DevicePolicyStringResource; 23 import android.app.admin.ParcelableResource; 24 import android.app.admin.NetworkEvent; 25 import android.app.IApplicationThread; 26 import android.app.IServiceConnection; 27 import android.app.admin.ParcelableGranteeMap; 28 import android.app.admin.PreferentialNetworkServiceConfig; 29 import android.app.admin.StartInstallingUpdateCallback; 30 import android.app.admin.SystemUpdateInfo; 31 import android.app.admin.SystemUpdatePolicy; 32 import android.app.admin.PackagePolicy; 33 import android.app.admin.PasswordMetrics; 34 import android.app.admin.FactoryResetProtectionPolicy; 35 import android.app.admin.ManagedProfileProvisioningParams; 36 import android.app.admin.FullyManagedDeviceProvisioningParams; 37 import android.app.admin.ManagedSubscriptionsPolicy; 38 import android.app.admin.WifiSsidPolicy; 39 import android.content.ComponentName; 40 import android.content.Intent; 41 import android.content.IntentFilter; 42 import android.content.pm.IPackageDataObserver; 43 import android.content.pm.ParceledListSlice; 44 import android.content.pm.StringParceledListSlice; 45 import android.graphics.Bitmap; 46 import android.net.ProxyInfo; 47 import android.net.Uri; 48 import android.os.Bundle; 49 import android.os.PersistableBundle; 50 import android.os.RemoteCallback; 51 import android.os.UserHandle; 52 import android.security.keymaster.KeymasterCertificateChain; 53 import android.security.keystore.ParcelableKeyGenParameterSpec; 54 import android.telephony.data.ApnSetting; 55 import com.android.internal.infra.AndroidFuture; 56 import android.app.admin.DevicePolicyState; 57 import android.app.admin.EnforcingAdmin; 58 59 import java.util.List; 60 61 /** 62 * Internal IPC interface to the device policy service. 63 * {@hide} 64 */ 65 interface IDevicePolicyManager { setPasswordQuality(in ComponentName who, int quality, boolean parent)66 void setPasswordQuality(in ComponentName who, int quality, boolean parent); getPasswordQuality(in ComponentName who, int userHandle, boolean parent)67 int getPasswordQuality(in ComponentName who, int userHandle, boolean parent); 68 setPasswordMinimumLength(in ComponentName who, int length, boolean parent)69 void setPasswordMinimumLength(in ComponentName who, int length, boolean parent); getPasswordMinimumLength(in ComponentName who, int userHandle, boolean parent)70 int getPasswordMinimumLength(in ComponentName who, int userHandle, boolean parent); 71 setPasswordMinimumUpperCase(in ComponentName who, int length, boolean parent)72 void setPasswordMinimumUpperCase(in ComponentName who, int length, boolean parent); getPasswordMinimumUpperCase(in ComponentName who, int userHandle, boolean parent)73 int getPasswordMinimumUpperCase(in ComponentName who, int userHandle, boolean parent); 74 setPasswordMinimumLowerCase(in ComponentName who, int length, boolean parent)75 void setPasswordMinimumLowerCase(in ComponentName who, int length, boolean parent); getPasswordMinimumLowerCase(in ComponentName who, int userHandle, boolean parent)76 int getPasswordMinimumLowerCase(in ComponentName who, int userHandle, boolean parent); 77 setPasswordMinimumLetters(in ComponentName who, int length, boolean parent)78 void setPasswordMinimumLetters(in ComponentName who, int length, boolean parent); getPasswordMinimumLetters(in ComponentName who, int userHandle, boolean parent)79 int getPasswordMinimumLetters(in ComponentName who, int userHandle, boolean parent); 80 setPasswordMinimumNumeric(in ComponentName who, int length, boolean parent)81 void setPasswordMinimumNumeric(in ComponentName who, int length, boolean parent); getPasswordMinimumNumeric(in ComponentName who, int userHandle, boolean parent)82 int getPasswordMinimumNumeric(in ComponentName who, int userHandle, boolean parent); 83 setPasswordMinimumSymbols(in ComponentName who, int length, boolean parent)84 void setPasswordMinimumSymbols(in ComponentName who, int length, boolean parent); getPasswordMinimumSymbols(in ComponentName who, int userHandle, boolean parent)85 int getPasswordMinimumSymbols(in ComponentName who, int userHandle, boolean parent); 86 setPasswordMinimumNonLetter(in ComponentName who, int length, boolean parent)87 void setPasswordMinimumNonLetter(in ComponentName who, int length, boolean parent); getPasswordMinimumNonLetter(in ComponentName who, int userHandle, boolean parent)88 int getPasswordMinimumNonLetter(in ComponentName who, int userHandle, boolean parent); 89 getPasswordMinimumMetrics(int userHandle, boolean deviceWideOnly)90 PasswordMetrics getPasswordMinimumMetrics(int userHandle, boolean deviceWideOnly); 91 setPasswordHistoryLength(in ComponentName who, int length, boolean parent)92 void setPasswordHistoryLength(in ComponentName who, int length, boolean parent); getPasswordHistoryLength(in ComponentName who, int userHandle, boolean parent)93 int getPasswordHistoryLength(in ComponentName who, int userHandle, boolean parent); 94 setPasswordExpirationTimeout(in ComponentName who, String callerPackageName, long expiration, boolean parent)95 void setPasswordExpirationTimeout(in ComponentName who, String callerPackageName, long expiration, boolean parent); getPasswordExpirationTimeout(in ComponentName who, int userHandle, boolean parent)96 long getPasswordExpirationTimeout(in ComponentName who, int userHandle, boolean parent); 97 getPasswordExpiration(in ComponentName who, int userHandle, boolean parent)98 long getPasswordExpiration(in ComponentName who, int userHandle, boolean parent); 99 isActivePasswordSufficient(String callerPackageName, int userHandle, boolean parent)100 boolean isActivePasswordSufficient(String callerPackageName, int userHandle, boolean parent); isActivePasswordSufficientForDeviceRequirement()101 boolean isActivePasswordSufficientForDeviceRequirement(); isPasswordSufficientAfterProfileUnification(int userHandle, int profileUser)102 boolean isPasswordSufficientAfterProfileUnification(int userHandle, int profileUser); getPasswordComplexity(boolean parent)103 int getPasswordComplexity(boolean parent); setRequiredPasswordComplexity(String callerPackageName, int passwordComplexity, boolean parent)104 void setRequiredPasswordComplexity(String callerPackageName, int passwordComplexity, boolean parent); getRequiredPasswordComplexity(String callerPackageName, boolean parent)105 int getRequiredPasswordComplexity(String callerPackageName, boolean parent); getAggregatedPasswordComplexityForUser(int userId, boolean deviceWideOnly)106 int getAggregatedPasswordComplexityForUser(int userId, boolean deviceWideOnly); isUsingUnifiedPassword(in ComponentName admin)107 boolean isUsingUnifiedPassword(in ComponentName admin); getCurrentFailedPasswordAttempts(String callerPackageName, int userHandle, boolean parent)108 int getCurrentFailedPasswordAttempts(String callerPackageName, int userHandle, boolean parent); getProfileWithMinimumFailedPasswordsForWipe(int userHandle, boolean parent)109 int getProfileWithMinimumFailedPasswordsForWipe(int userHandle, boolean parent); 110 setMaximumFailedPasswordsForWipe( in ComponentName admin, String callerPackageName, int num, boolean parent)111 void setMaximumFailedPasswordsForWipe( 112 in ComponentName admin, String callerPackageName, int num, boolean parent); getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle, boolean parent)113 int getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle, boolean parent); 114 resetPassword(String password, int flags)115 boolean resetPassword(String password, int flags); 116 setMaximumTimeToLock(in ComponentName who, String callerPackageName, long timeMs, boolean parent)117 void setMaximumTimeToLock(in ComponentName who, String callerPackageName, long timeMs, boolean parent); getMaximumTimeToLock(in ComponentName who, int userHandle, boolean parent)118 long getMaximumTimeToLock(in ComponentName who, int userHandle, boolean parent); 119 setRequiredStrongAuthTimeout(in ComponentName who, String callerPackageName, long timeMs, boolean parent)120 void setRequiredStrongAuthTimeout(in ComponentName who, String callerPackageName, long timeMs, boolean parent); getRequiredStrongAuthTimeout(in ComponentName who, int userId, boolean parent)121 long getRequiredStrongAuthTimeout(in ComponentName who, int userId, boolean parent); 122 lockNow(int flags, String callerPackageName, boolean parent)123 void lockNow(int flags, String callerPackageName, boolean parent); 124 125 /** 126 * @param factoryReset only applicable when `targetSdk >= U`, either tries to factoryReset/fail or removeUser/fail otherwise 127 **/ wipeDataWithReason(String callerPackageName, int flags, String wipeReasonForUser, boolean parent, boolean factoryReset)128 void wipeDataWithReason(String callerPackageName, int flags, String wipeReasonForUser, boolean parent, boolean factoryReset); 129 setFactoryResetProtectionPolicy(in ComponentName who, String callerPackageName, in FactoryResetProtectionPolicy policy)130 void setFactoryResetProtectionPolicy(in ComponentName who, String callerPackageName, in FactoryResetProtectionPolicy policy); getFactoryResetProtectionPolicy(in ComponentName who)131 FactoryResetProtectionPolicy getFactoryResetProtectionPolicy(in ComponentName who); isFactoryResetProtectionPolicySupported()132 boolean isFactoryResetProtectionPolicySupported(); 133 sendLostModeLocationUpdate(in AndroidFuture<boolean> future)134 void sendLostModeLocationUpdate(in AndroidFuture<boolean> future); 135 setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList)136 ComponentName setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList); getGlobalProxyAdmin(int userHandle)137 ComponentName getGlobalProxyAdmin(int userHandle); setRecommendedGlobalProxy(in ComponentName admin, in ProxyInfo proxyInfo)138 void setRecommendedGlobalProxy(in ComponentName admin, in ProxyInfo proxyInfo); 139 setStorageEncryption(in ComponentName who, boolean encrypt)140 int setStorageEncryption(in ComponentName who, boolean encrypt); getStorageEncryption(in ComponentName who, int userHandle)141 boolean getStorageEncryption(in ComponentName who, int userHandle); getStorageEncryptionStatus(in String callerPackage, int userHandle)142 int getStorageEncryptionStatus(in String callerPackage, int userHandle); 143 requestBugreport(in ComponentName who)144 boolean requestBugreport(in ComponentName who); 145 setCameraDisabled(in ComponentName who, String callerPackageName, boolean disabled, boolean parent)146 void setCameraDisabled(in ComponentName who, String callerPackageName, boolean disabled, boolean parent); getCameraDisabled(in ComponentName who, String callerPackageName, int userHandle, boolean parent)147 boolean getCameraDisabled(in ComponentName who, String callerPackageName, int userHandle, boolean parent); 148 setScreenCaptureDisabled( in ComponentName who, String callerPackageName, boolean disabled, boolean parent)149 void setScreenCaptureDisabled( 150 in ComponentName who, String callerPackageName, boolean disabled, boolean parent); getScreenCaptureDisabled(in ComponentName who, int userHandle, boolean parent)151 boolean getScreenCaptureDisabled(in ComponentName who, int userHandle, boolean parent); 152 setNearbyNotificationStreamingPolicy(int policy)153 void setNearbyNotificationStreamingPolicy(int policy); getNearbyNotificationStreamingPolicy(int userId)154 int getNearbyNotificationStreamingPolicy(int userId); 155 setNearbyAppStreamingPolicy(int policy)156 void setNearbyAppStreamingPolicy(int policy); getNearbyAppStreamingPolicy(int userId)157 int getNearbyAppStreamingPolicy(int userId); 158 setKeyguardDisabledFeatures(in ComponentName who, String callerPackageName, int which, boolean parent)159 void setKeyguardDisabledFeatures(in ComponentName who, String callerPackageName, int which, boolean parent); getKeyguardDisabledFeatures(in ComponentName who, int userHandle, boolean parent)160 int getKeyguardDisabledFeatures(in ComponentName who, int userHandle, boolean parent); 161 setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle)162 void setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle); isAdminActive(in ComponentName policyReceiver, int userHandle)163 boolean isAdminActive(in ComponentName policyReceiver, int userHandle); getActiveAdmins(int userHandle)164 List<ComponentName> getActiveAdmins(int userHandle); 165 @UnsupportedAppUsage packageHasActiveAdmins(String packageName, int userHandle)166 boolean packageHasActiveAdmins(String packageName, int userHandle); getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle)167 void getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle); removeActiveAdmin(in ComponentName policyReceiver, int userHandle)168 void removeActiveAdmin(in ComponentName policyReceiver, int userHandle); forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle)169 void forceRemoveActiveAdmin(in ComponentName policyReceiver, int userHandle); hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle)170 boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle); 171 reportPasswordChanged(in PasswordMetrics metrics, int userId)172 void reportPasswordChanged(in PasswordMetrics metrics, int userId); reportFailedPasswordAttempt(int userHandle, boolean parent)173 void reportFailedPasswordAttempt(int userHandle, boolean parent); reportSuccessfulPasswordAttempt(int userHandle)174 void reportSuccessfulPasswordAttempt(int userHandle); reportFailedBiometricAttempt(int userHandle)175 void reportFailedBiometricAttempt(int userHandle); reportSuccessfulBiometricAttempt(int userHandle)176 void reportSuccessfulBiometricAttempt(int userHandle); reportKeyguardDismissed(int userHandle)177 void reportKeyguardDismissed(int userHandle); reportKeyguardSecured(int userHandle)178 void reportKeyguardSecured(int userHandle); 179 setDeviceOwner(in ComponentName who, int userId, boolean setProfileOwnerOnCurrentUserIfNecessary)180 boolean setDeviceOwner(in ComponentName who, int userId, boolean setProfileOwnerOnCurrentUserIfNecessary); getDeviceOwnerComponent(boolean callingUserOnly)181 ComponentName getDeviceOwnerComponent(boolean callingUserOnly); hasDeviceOwner()182 boolean hasDeviceOwner(); getDeviceOwnerName()183 String getDeviceOwnerName(); clearDeviceOwner(String packageName)184 void clearDeviceOwner(String packageName); getDeviceOwnerUserId()185 int getDeviceOwnerUserId(); 186 setProfileOwner(in ComponentName who, int userHandle)187 boolean setProfileOwner(in ComponentName who, int userHandle); getProfileOwnerAsUser(int userHandle)188 ComponentName getProfileOwnerAsUser(int userHandle); getProfileOwnerOrDeviceOwnerSupervisionComponent(in UserHandle userHandle)189 ComponentName getProfileOwnerOrDeviceOwnerSupervisionComponent(in UserHandle userHandle); isSupervisionComponent(in ComponentName who)190 boolean isSupervisionComponent(in ComponentName who); getProfileOwnerName(int userHandle)191 String getProfileOwnerName(int userHandle); setProfileEnabled(in ComponentName who)192 void setProfileEnabled(in ComponentName who); setProfileName(in ComponentName who, String profileName)193 void setProfileName(in ComponentName who, String profileName); clearProfileOwner(in ComponentName who)194 void clearProfileOwner(in ComponentName who); hasUserSetupCompleted()195 boolean hasUserSetupCompleted(); isOrganizationOwnedDeviceWithManagedProfile()196 boolean isOrganizationOwnedDeviceWithManagedProfile(); 197 checkDeviceIdentifierAccess(in String packageName, int pid, int uid)198 boolean checkDeviceIdentifierAccess(in String packageName, int pid, int uid); 199 setDeviceOwnerLockScreenInfo(in ComponentName who, CharSequence deviceOwnerInfo)200 void setDeviceOwnerLockScreenInfo(in ComponentName who, CharSequence deviceOwnerInfo); getDeviceOwnerLockScreenInfo()201 CharSequence getDeviceOwnerLockScreenInfo(); 202 setPackagesSuspended(in ComponentName admin, in String callerPackage, in String[] packageNames, boolean suspended)203 String[] setPackagesSuspended(in ComponentName admin, in String callerPackage, in String[] packageNames, boolean suspended); isPackageSuspended(in ComponentName admin, in String callerPackage, String packageName)204 boolean isPackageSuspended(in ComponentName admin, in String callerPackage, String packageName); listPolicyExemptApps()205 List<String> listPolicyExemptApps(); 206 installCaCert(in ComponentName admin, String callerPackage, in byte[] certBuffer)207 boolean installCaCert(in ComponentName admin, String callerPackage, in byte[] certBuffer); uninstallCaCerts(in ComponentName admin, String callerPackage, in String[] aliases)208 void uninstallCaCerts(in ComponentName admin, String callerPackage, in String[] aliases); enforceCanManageCaCerts(in ComponentName admin, in String callerPackage)209 void enforceCanManageCaCerts(in ComponentName admin, in String callerPackage); approveCaCert(in String alias, int userHandle, boolean approval)210 boolean approveCaCert(in String alias, int userHandle, boolean approval); isCaCertApproved(in String alias, int userHandle)211 boolean isCaCertApproved(in String alias, int userHandle); 212 installKeyPair(in ComponentName who, in String callerPackage, in byte[] privKeyBuffer, in byte[] certBuffer, in byte[] certChainBuffer, String alias, boolean requestAccess, boolean isUserSelectable)213 boolean installKeyPair(in ComponentName who, in String callerPackage, in byte[] privKeyBuffer, 214 in byte[] certBuffer, in byte[] certChainBuffer, String alias, boolean requestAccess, 215 boolean isUserSelectable); removeKeyPair(in ComponentName who, in String callerPackage, String alias)216 boolean removeKeyPair(in ComponentName who, in String callerPackage, String alias); hasKeyPair(in String callerPackage, in String alias)217 boolean hasKeyPair(in String callerPackage, in String alias); generateKeyPair(in ComponentName who, in String callerPackage, in String algorithm, in ParcelableKeyGenParameterSpec keySpec, in int idAttestationFlags, out KeymasterCertificateChain attestationChain)218 boolean generateKeyPair(in ComponentName who, in String callerPackage, in String algorithm, 219 in ParcelableKeyGenParameterSpec keySpec, 220 in int idAttestationFlags, out KeymasterCertificateChain attestationChain); setKeyPairCertificate(in ComponentName who, in String callerPackage, in String alias, in byte[] certBuffer, in byte[] certChainBuffer, boolean isUserSelectable)221 boolean setKeyPairCertificate(in ComponentName who, in String callerPackage, in String alias, 222 in byte[] certBuffer, in byte[] certChainBuffer, boolean isUserSelectable); choosePrivateKeyAlias(int uid, in Uri uri, in String alias, IBinder aliasCallback)223 void choosePrivateKeyAlias(int uid, in Uri uri, in String alias, IBinder aliasCallback); 224 setDelegatedScopes(in ComponentName who, in String delegatePackage, in List<String> scopes)225 void setDelegatedScopes(in ComponentName who, in String delegatePackage, in List<String> scopes); getDelegatedScopes(in ComponentName who, String delegatePackage)226 List<String> getDelegatedScopes(in ComponentName who, String delegatePackage); getDelegatePackages(in ComponentName who, String scope)227 List<String> getDelegatePackages(in ComponentName who, String scope); 228 setCertInstallerPackage(in ComponentName who, String installerPackage)229 void setCertInstallerPackage(in ComponentName who, String installerPackage); getCertInstallerPackage(in ComponentName who)230 String getCertInstallerPackage(in ComponentName who); 231 setAlwaysOnVpnPackage(in ComponentName who, String vpnPackage, boolean lockdown, in List<String> lockdownAllowlist)232 boolean setAlwaysOnVpnPackage(in ComponentName who, String vpnPackage, boolean lockdown, in List<String> lockdownAllowlist); getAlwaysOnVpnPackage(in ComponentName who)233 String getAlwaysOnVpnPackage(in ComponentName who); getAlwaysOnVpnPackageForUser(int userHandle)234 String getAlwaysOnVpnPackageForUser(int userHandle); isAlwaysOnVpnLockdownEnabled(in ComponentName who)235 boolean isAlwaysOnVpnLockdownEnabled(in ComponentName who); isAlwaysOnVpnLockdownEnabledForUser(int userHandle)236 boolean isAlwaysOnVpnLockdownEnabledForUser(int userHandle); getAlwaysOnVpnLockdownAllowlist(in ComponentName who)237 List<String> getAlwaysOnVpnLockdownAllowlist(in ComponentName who); 238 addPersistentPreferredActivity(in ComponentName admin, String callerPackageName, in IntentFilter filter, in ComponentName activity)239 void addPersistentPreferredActivity(in ComponentName admin, String callerPackageName, in IntentFilter filter, in ComponentName activity); clearPackagePersistentPreferredActivities(in ComponentName admin, String callerPackageName, String packageName)240 void clearPackagePersistentPreferredActivities(in ComponentName admin, String callerPackageName, String packageName); 241 setDefaultSmsApplication(in ComponentName admin, String callerPackageName, String packageName, boolean parent)242 void setDefaultSmsApplication(in ComponentName admin, String callerPackageName, String packageName, boolean parent); setDefaultDialerApplication(String packageName)243 void setDefaultDialerApplication(String packageName); 244 setApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName, in Bundle settings)245 void setApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName, in Bundle settings); getApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName)246 Bundle getApplicationRestrictions(in ComponentName who, in String callerPackage, in String packageName); setApplicationRestrictionsManagingPackage(in ComponentName admin, in String packageName)247 boolean setApplicationRestrictionsManagingPackage(in ComponentName admin, in String packageName); getApplicationRestrictionsManagingPackage(in ComponentName admin)248 String getApplicationRestrictionsManagingPackage(in ComponentName admin); isCallerApplicationRestrictionsManagingPackage(in String callerPackage)249 boolean isCallerApplicationRestrictionsManagingPackage(in String callerPackage); 250 setRestrictionsProvider(in ComponentName who, in ComponentName provider)251 void setRestrictionsProvider(in ComponentName who, in ComponentName provider); getRestrictionsProvider(int userHandle)252 ComponentName getRestrictionsProvider(int userHandle); 253 setUserRestriction(in ComponentName who, in String callerPackage, in String key, boolean enable, boolean parent)254 void setUserRestriction(in ComponentName who, in String callerPackage, in String key, boolean enable, boolean parent); setUserRestrictionGlobally(in String callerPackage, in String key)255 void setUserRestrictionGlobally(in String callerPackage, in String key); getUserRestrictions(in ComponentName who, in String callerPackage, boolean parent)256 Bundle getUserRestrictions(in ComponentName who, in String callerPackage, boolean parent); getUserRestrictionsGlobally(in String callerPackage)257 Bundle getUserRestrictionsGlobally(in String callerPackage); 258 addCrossProfileIntentFilter(in ComponentName admin, String callerPackageName, in IntentFilter filter, int flags)259 void addCrossProfileIntentFilter(in ComponentName admin, String callerPackageName, in IntentFilter filter, int flags); clearCrossProfileIntentFilters(in ComponentName admin, String callerPackageName)260 void clearCrossProfileIntentFilters(in ComponentName admin, String callerPackageName); 261 setPermittedAccessibilityServices(in ComponentName admin,in List<String> packageList)262 boolean setPermittedAccessibilityServices(in ComponentName admin,in List<String> packageList); getPermittedAccessibilityServices(in ComponentName admin)263 List<String> getPermittedAccessibilityServices(in ComponentName admin); getPermittedAccessibilityServicesForUser(int userId)264 List<String> getPermittedAccessibilityServicesForUser(int userId); isAccessibilityServicePermittedByAdmin(in ComponentName admin, String packageName, int userId)265 boolean isAccessibilityServicePermittedByAdmin(in ComponentName admin, String packageName, int userId); 266 setPermittedInputMethods(in ComponentName admin, String callerPackageName, in List<String> packageList, boolean parent)267 boolean setPermittedInputMethods(in ComponentName admin, String callerPackageName, in List<String> packageList, boolean parent); getPermittedInputMethods(in ComponentName admin, String callerPackageName, boolean parent)268 List<String> getPermittedInputMethods(in ComponentName admin, String callerPackageName, boolean parent); getPermittedInputMethodsAsUser(int userId)269 List<String> getPermittedInputMethodsAsUser(int userId); isInputMethodPermittedByAdmin(in ComponentName admin, String packageName, int userId, boolean parent)270 boolean isInputMethodPermittedByAdmin(in ComponentName admin, String packageName, int userId, boolean parent); 271 setPermittedCrossProfileNotificationListeners(in ComponentName admin, in List<String> packageList)272 boolean setPermittedCrossProfileNotificationListeners(in ComponentName admin, in List<String> packageList); getPermittedCrossProfileNotificationListeners(in ComponentName admin)273 List<String> getPermittedCrossProfileNotificationListeners(in ComponentName admin); isNotificationListenerServicePermitted(in String packageName, int userId)274 boolean isNotificationListenerServicePermitted(in String packageName, int userId); 275 createAdminSupportIntent(in String restriction)276 Intent createAdminSupportIntent(in String restriction); getEnforcingAdminAndUserDetails(int userId,String restriction)277 Bundle getEnforcingAdminAndUserDetails(int userId,String restriction); getEnforcingAdminsForRestriction(int userId,String restriction)278 List<EnforcingAdmin> getEnforcingAdminsForRestriction(int userId,String restriction); setApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean hidden, boolean parent)279 boolean setApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean hidden, boolean parent); isApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean parent)280 boolean isApplicationHidden(in ComponentName admin, in String callerPackage, in String packageName, boolean parent); 281 createAndManageUser(in ComponentName who, in String name, in ComponentName profileOwner, in PersistableBundle adminExtras, in int flags)282 UserHandle createAndManageUser(in ComponentName who, in String name, in ComponentName profileOwner, in PersistableBundle adminExtras, in int flags); removeUser(in ComponentName who, in UserHandle userHandle)283 boolean removeUser(in ComponentName who, in UserHandle userHandle); switchUser(in ComponentName who, in UserHandle userHandle)284 boolean switchUser(in ComponentName who, in UserHandle userHandle); startUserInBackground(in ComponentName who, in UserHandle userHandle)285 int startUserInBackground(in ComponentName who, in UserHandle userHandle); stopUser(in ComponentName who, in UserHandle userHandle)286 int stopUser(in ComponentName who, in UserHandle userHandle); logoutUser(in ComponentName who)287 int logoutUser(in ComponentName who); logoutUserInternal()288 int logoutUserInternal(); // AIDL doesn't allow overloading name (logoutUser()) getLogoutUserId()289 int getLogoutUserId(); getSecondaryUsers(in ComponentName who)290 List<UserHandle> getSecondaryUsers(in ComponentName who); acknowledgeNewUserDisclaimer(int userId)291 void acknowledgeNewUserDisclaimer(int userId); isNewUserDisclaimerAcknowledged(int userId)292 boolean isNewUserDisclaimerAcknowledged(int userId); 293 enableSystemApp(in ComponentName admin, in String callerPackage, in String packageName)294 void enableSystemApp(in ComponentName admin, in String callerPackage, in String packageName); enableSystemAppWithIntent(in ComponentName admin, in String callerPackage, in Intent intent)295 int enableSystemAppWithIntent(in ComponentName admin, in String callerPackage, in Intent intent); installExistingPackage(in ComponentName admin, in String callerPackage, in String packageName)296 boolean installExistingPackage(in ComponentName admin, in String callerPackage, in String packageName); 297 setAccountManagementDisabled(in ComponentName who, String callerPackageName, in String accountType, in boolean disabled, in boolean parent)298 void setAccountManagementDisabled(in ComponentName who, String callerPackageName, in String accountType, in boolean disabled, in boolean parent); getAccountTypesWithManagementDisabled(String callerPackageName)299 String[] getAccountTypesWithManagementDisabled(String callerPackageName); getAccountTypesWithManagementDisabledAsUser(int userId, String callerPackageName, in boolean parent)300 String[] getAccountTypesWithManagementDisabledAsUser(int userId, String callerPackageName, in boolean parent); 301 setSecondaryLockscreenEnabled(in ComponentName who, boolean enabled)302 void setSecondaryLockscreenEnabled(in ComponentName who, boolean enabled); isSecondaryLockscreenEnabled(in UserHandle userHandle)303 boolean isSecondaryLockscreenEnabled(in UserHandle userHandle); 304 setPreferentialNetworkServiceConfigs( in List<PreferentialNetworkServiceConfig> preferentialNetworkServiceConfigs)305 void setPreferentialNetworkServiceConfigs( 306 in List<PreferentialNetworkServiceConfig> preferentialNetworkServiceConfigs); getPreferentialNetworkServiceConfigs()307 List<PreferentialNetworkServiceConfig> getPreferentialNetworkServiceConfigs(); 308 setLockTaskPackages(in ComponentName who, String callerPackageName, in String[] packages)309 void setLockTaskPackages(in ComponentName who, String callerPackageName, in String[] packages); getLockTaskPackages(in ComponentName who, String callerPackageName)310 String[] getLockTaskPackages(in ComponentName who, String callerPackageName); isLockTaskPermitted(in String pkg)311 boolean isLockTaskPermitted(in String pkg); 312 setLockTaskFeatures(in ComponentName who, String callerPackageName, int flags)313 void setLockTaskFeatures(in ComponentName who, String callerPackageName, int flags); getLockTaskFeatures(in ComponentName who, String callerPackageName)314 int getLockTaskFeatures(in ComponentName who, String callerPackageName); 315 setGlobalSetting(in ComponentName who, in String setting, in String value)316 void setGlobalSetting(in ComponentName who, in String setting, in String value); setSystemSetting(in ComponentName who, in String setting, in String value)317 void setSystemSetting(in ComponentName who, in String setting, in String value); setSecureSetting(in ComponentName who, in String setting, in String value)318 void setSecureSetting(in ComponentName who, in String setting, in String value); 319 setConfiguredNetworksLockdownState(in ComponentName who, String callerPackageName, boolean lockdown)320 void setConfiguredNetworksLockdownState(in ComponentName who, String callerPackageName, boolean lockdown); hasLockdownAdminConfiguredNetworks(in ComponentName who)321 boolean hasLockdownAdminConfiguredNetworks(in ComponentName who); 322 setLocationEnabled(in ComponentName who, boolean locationEnabled)323 void setLocationEnabled(in ComponentName who, boolean locationEnabled); 324 setTime(in ComponentName who, String callerPackageName, long millis)325 boolean setTime(in ComponentName who, String callerPackageName, long millis); setTimeZone(in ComponentName who, String callerPackageName, String timeZone)326 boolean setTimeZone(in ComponentName who, String callerPackageName, String timeZone); 327 setMasterVolumeMuted(in ComponentName admin, boolean on)328 void setMasterVolumeMuted(in ComponentName admin, boolean on); isMasterVolumeMuted(in ComponentName admin)329 boolean isMasterVolumeMuted(in ComponentName admin); 330 notifyLockTaskModeChanged(boolean isEnabled, String pkg, int userId)331 void notifyLockTaskModeChanged(boolean isEnabled, String pkg, int userId); 332 setUninstallBlocked(in ComponentName admin, in String callerPackage, in String packageName, boolean uninstallBlocked)333 void setUninstallBlocked(in ComponentName admin, in String callerPackage, in String packageName, boolean uninstallBlocked); isUninstallBlocked(in String packageName)334 boolean isUninstallBlocked(in String packageName); 335 setCrossProfileCallerIdDisabled(in ComponentName who, boolean disabled)336 void setCrossProfileCallerIdDisabled(in ComponentName who, boolean disabled); getCrossProfileCallerIdDisabled(in ComponentName who)337 boolean getCrossProfileCallerIdDisabled(in ComponentName who); getCrossProfileCallerIdDisabledForUser(int userId)338 boolean getCrossProfileCallerIdDisabledForUser(int userId); setCrossProfileContactsSearchDisabled(in ComponentName who, boolean disabled)339 void setCrossProfileContactsSearchDisabled(in ComponentName who, boolean disabled); getCrossProfileContactsSearchDisabled(in ComponentName who)340 boolean getCrossProfileContactsSearchDisabled(in ComponentName who); getCrossProfileContactsSearchDisabledForUser(int userId)341 boolean getCrossProfileContactsSearchDisabledForUser(int userId); startManagedQuickContact(String lookupKey, long contactId, boolean isContactIdIgnored, long directoryId, in Intent originalIntent)342 void startManagedQuickContact(String lookupKey, long contactId, boolean isContactIdIgnored, long directoryId, in Intent originalIntent); 343 setManagedProfileCallerIdAccessPolicy(in PackagePolicy policy)344 void setManagedProfileCallerIdAccessPolicy(in PackagePolicy policy); getManagedProfileCallerIdAccessPolicy()345 PackagePolicy getManagedProfileCallerIdAccessPolicy(); hasManagedProfileCallerIdAccess(int userId, String packageName)346 boolean hasManagedProfileCallerIdAccess(int userId, String packageName); 347 setCredentialManagerPolicy(in PackagePolicy policy)348 void setCredentialManagerPolicy(in PackagePolicy policy); getCredentialManagerPolicy(int userId)349 PackagePolicy getCredentialManagerPolicy(int userId); 350 setManagedProfileContactsAccessPolicy(in PackagePolicy policy)351 void setManagedProfileContactsAccessPolicy(in PackagePolicy policy); getManagedProfileContactsAccessPolicy()352 PackagePolicy getManagedProfileContactsAccessPolicy(); hasManagedProfileContactsAccess(int userId, String packageName)353 boolean hasManagedProfileContactsAccess(int userId, String packageName); 354 setBluetoothContactSharingDisabled(in ComponentName who, boolean disabled)355 void setBluetoothContactSharingDisabled(in ComponentName who, boolean disabled); getBluetoothContactSharingDisabled(in ComponentName who)356 boolean getBluetoothContactSharingDisabled(in ComponentName who); getBluetoothContactSharingDisabledForUser(int userId)357 boolean getBluetoothContactSharingDisabledForUser(int userId); 358 setTrustAgentConfiguration(in ComponentName admin, String callerPackageName, in ComponentName agent, in PersistableBundle args, boolean parent)359 void setTrustAgentConfiguration(in ComponentName admin, String callerPackageName, 360 in ComponentName agent, in PersistableBundle args, boolean parent); getTrustAgentConfiguration(in ComponentName admin, in ComponentName agent, int userId, boolean parent)361 List<PersistableBundle> getTrustAgentConfiguration(in ComponentName admin, 362 in ComponentName agent, int userId, boolean parent); 363 addCrossProfileWidgetProvider(in ComponentName admin, String callerPackageName, String packageName)364 boolean addCrossProfileWidgetProvider(in ComponentName admin, String callerPackageName, String packageName); removeCrossProfileWidgetProvider(in ComponentName admin, String callerPackageName, String packageName)365 boolean removeCrossProfileWidgetProvider(in ComponentName admin, String callerPackageName, String packageName); getCrossProfileWidgetProviders(in ComponentName admin, String callerPackageName)366 List<String> getCrossProfileWidgetProviders(in ComponentName admin, String callerPackageName); 367 setAutoTimeRequired(in ComponentName who, boolean required)368 void setAutoTimeRequired(in ComponentName who, boolean required); getAutoTimeRequired()369 boolean getAutoTimeRequired(); 370 setAutoTimeEnabled(in ComponentName who, String callerPackageName, boolean enabled)371 void setAutoTimeEnabled(in ComponentName who, String callerPackageName, boolean enabled); getAutoTimeEnabled(in ComponentName who, String callerPackageName)372 boolean getAutoTimeEnabled(in ComponentName who, String callerPackageName); 373 setAutoTimeZoneEnabled(in ComponentName who, String callerPackageName, boolean enabled)374 void setAutoTimeZoneEnabled(in ComponentName who, String callerPackageName, boolean enabled); getAutoTimeZoneEnabled(in ComponentName who, String callerPackageName)375 boolean getAutoTimeZoneEnabled(in ComponentName who, String callerPackageName); 376 setForceEphemeralUsers(in ComponentName who, boolean forceEpehemeralUsers)377 void setForceEphemeralUsers(in ComponentName who, boolean forceEpehemeralUsers); getForceEphemeralUsers(in ComponentName who)378 boolean getForceEphemeralUsers(in ComponentName who); 379 isRemovingAdmin(in ComponentName adminReceiver, int userHandle)380 boolean isRemovingAdmin(in ComponentName adminReceiver, int userHandle); 381 setUserIcon(in ComponentName admin, in Bitmap icon)382 void setUserIcon(in ComponentName admin, in Bitmap icon); 383 setSystemUpdatePolicy(in ComponentName who, String callerPackageName, in SystemUpdatePolicy policy)384 void setSystemUpdatePolicy(in ComponentName who, String callerPackageName, in SystemUpdatePolicy policy); getSystemUpdatePolicy()385 SystemUpdatePolicy getSystemUpdatePolicy(); clearSystemUpdatePolicyFreezePeriodRecord()386 void clearSystemUpdatePolicyFreezePeriodRecord(); 387 setKeyguardDisabled(in ComponentName admin, boolean disabled)388 boolean setKeyguardDisabled(in ComponentName admin, boolean disabled); setStatusBarDisabled(in ComponentName who, String callerPackageName, boolean disabled)389 boolean setStatusBarDisabled(in ComponentName who, String callerPackageName, boolean disabled); isStatusBarDisabled(in String callerPackage)390 boolean isStatusBarDisabled(in String callerPackage); getDoNotAskCredentialsOnBoot()391 boolean getDoNotAskCredentialsOnBoot(); 392 notifyPendingSystemUpdate(in SystemUpdateInfo info)393 void notifyPendingSystemUpdate(in SystemUpdateInfo info); getPendingSystemUpdate(in ComponentName admin)394 SystemUpdateInfo getPendingSystemUpdate(in ComponentName admin); 395 setPermissionPolicy(in ComponentName admin, in String callerPackage, int policy)396 void setPermissionPolicy(in ComponentName admin, in String callerPackage, int policy); getPermissionPolicy(in ComponentName admin)397 int getPermissionPolicy(in ComponentName admin); setPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission, int grantState, in RemoteCallback resultReceiver)398 void setPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, 399 String permission, int grantState, in RemoteCallback resultReceiver); getPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission)400 int getPermissionGrantState(in ComponentName admin, in String callerPackage, String packageName, String permission); isProvisioningAllowed(String action, String packageName)401 boolean isProvisioningAllowed(String action, String packageName); checkProvisioningPrecondition(String action, String packageName)402 int checkProvisioningPrecondition(String action, String packageName); setKeepUninstalledPackages(in ComponentName admin, in String callerPackage, in List<String> packageList)403 void setKeepUninstalledPackages(in ComponentName admin, in String callerPackage, in List<String> packageList); getKeepUninstalledPackages(in ComponentName admin, in String callerPackage)404 List<String> getKeepUninstalledPackages(in ComponentName admin, in String callerPackage); isManagedProfile(in ComponentName admin)405 boolean isManagedProfile(in ComponentName admin); getWifiMacAddress(in ComponentName admin, String callerPackageName)406 String getWifiMacAddress(in ComponentName admin, String callerPackageName); reboot(in ComponentName admin)407 void reboot(in ComponentName admin); 408 setShortSupportMessage(in ComponentName admin, String callerPackageName, in CharSequence message)409 void setShortSupportMessage(in ComponentName admin, String callerPackageName, in CharSequence message); getShortSupportMessage(in ComponentName admin, String callerPackageName)410 CharSequence getShortSupportMessage(in ComponentName admin, String callerPackageName); setLongSupportMessage(in ComponentName admin, in CharSequence message)411 void setLongSupportMessage(in ComponentName admin, in CharSequence message); getLongSupportMessage(in ComponentName admin)412 CharSequence getLongSupportMessage(in ComponentName admin); 413 getShortSupportMessageForUser(in ComponentName admin, int userHandle)414 CharSequence getShortSupportMessageForUser(in ComponentName admin, int userHandle); getLongSupportMessageForUser(in ComponentName admin, int userHandle)415 CharSequence getLongSupportMessageForUser(in ComponentName admin, int userHandle); 416 setOrganizationColor(in ComponentName admin, in int color)417 void setOrganizationColor(in ComponentName admin, in int color); setOrganizationColorForUser(in int color, in int userId)418 void setOrganizationColorForUser(in int color, in int userId); clearOrganizationIdForUser(int userHandle)419 void clearOrganizationIdForUser(int userHandle); getOrganizationColor(in ComponentName admin)420 int getOrganizationColor(in ComponentName admin); getOrganizationColorForUser(int userHandle)421 int getOrganizationColorForUser(int userHandle); 422 setOrganizationName(in ComponentName admin, String callerPackageName, in CharSequence title)423 void setOrganizationName(in ComponentName admin, String callerPackageName, in CharSequence title); getOrganizationName(in ComponentName admin, String callerPackageName)424 CharSequence getOrganizationName(in ComponentName admin, String callerPackageName); getDeviceOwnerOrganizationName()425 CharSequence getDeviceOwnerOrganizationName(); getOrganizationNameForUser(int userHandle)426 CharSequence getOrganizationNameForUser(int userHandle); 427 getUserProvisioningState(int userHandle)428 int getUserProvisioningState(int userHandle); setUserProvisioningState(int state, int userHandle)429 void setUserProvisioningState(int state, int userHandle); 430 setAffiliationIds(in ComponentName admin, in List<String> ids)431 void setAffiliationIds(in ComponentName admin, in List<String> ids); getAffiliationIds(in ComponentName admin)432 List<String> getAffiliationIds(in ComponentName admin); isCallingUserAffiliated()433 boolean isCallingUserAffiliated(); isAffiliatedUser(int userId)434 boolean isAffiliatedUser(int userId); 435 setSecurityLoggingEnabled(in ComponentName admin, String packageName, boolean enabled)436 void setSecurityLoggingEnabled(in ComponentName admin, String packageName, boolean enabled); isSecurityLoggingEnabled(in ComponentName admin, String packageName)437 boolean isSecurityLoggingEnabled(in ComponentName admin, String packageName); retrieveSecurityLogs(in ComponentName admin, String packageName)438 ParceledListSlice retrieveSecurityLogs(in ComponentName admin, String packageName); retrievePreRebootSecurityLogs(in ComponentName admin, String packageName)439 ParceledListSlice retrievePreRebootSecurityLogs(in ComponentName admin, String packageName); forceNetworkLogs()440 long forceNetworkLogs(); forceSecurityLogs()441 long forceSecurityLogs(); 442 isUninstallInQueue(String packageName)443 boolean isUninstallInQueue(String packageName); uninstallPackageWithActiveAdmins(String packageName)444 void uninstallPackageWithActiveAdmins(String packageName); 445 isDeviceProvisioned()446 boolean isDeviceProvisioned(); isDeviceProvisioningConfigApplied()447 boolean isDeviceProvisioningConfigApplied(); setDeviceProvisioningConfigApplied()448 void setDeviceProvisioningConfigApplied(); 449 forceUpdateUserSetupComplete(int userId)450 void forceUpdateUserSetupComplete(int userId); 451 setBackupServiceEnabled(in ComponentName admin, boolean enabled)452 void setBackupServiceEnabled(in ComponentName admin, boolean enabled); isBackupServiceEnabled(in ComponentName admin)453 boolean isBackupServiceEnabled(in ComponentName admin); 454 setNetworkLoggingEnabled(in ComponentName admin, in String packageName, boolean enabled)455 void setNetworkLoggingEnabled(in ComponentName admin, in String packageName, boolean enabled); isNetworkLoggingEnabled(in ComponentName admin, in String packageName)456 boolean isNetworkLoggingEnabled(in ComponentName admin, in String packageName); retrieveNetworkLogs(in ComponentName admin, in String packageName, long batchToken)457 List<NetworkEvent> retrieveNetworkLogs(in ComponentName admin, in String packageName, long batchToken); 458 bindDeviceAdminServiceAsUser(in ComponentName admin, IApplicationThread caller, IBinder token, in Intent service, IServiceConnection connection, long flags, int targetUserId)459 boolean bindDeviceAdminServiceAsUser(in ComponentName admin, 460 IApplicationThread caller, IBinder token, in Intent service, 461 IServiceConnection connection, long flags, int targetUserId); getBindDeviceAdminTargetUsers(in ComponentName admin)462 List<UserHandle> getBindDeviceAdminTargetUsers(in ComponentName admin); isEphemeralUser(in ComponentName admin)463 boolean isEphemeralUser(in ComponentName admin); 464 getLastSecurityLogRetrievalTime()465 long getLastSecurityLogRetrievalTime(); getLastBugReportRequestTime()466 long getLastBugReportRequestTime(); getLastNetworkLogRetrievalTime()467 long getLastNetworkLogRetrievalTime(); 468 setResetPasswordToken(in ComponentName admin, String callerPackageName, in byte[] token)469 boolean setResetPasswordToken(in ComponentName admin, String callerPackageName, in byte[] token); clearResetPasswordToken(in ComponentName admin, String callerPackageName)470 boolean clearResetPasswordToken(in ComponentName admin, String callerPackageName); isResetPasswordTokenActive(in ComponentName admin, String callerPackageName)471 boolean isResetPasswordTokenActive(in ComponentName admin, String callerPackageName); resetPasswordWithToken(in ComponentName admin, String callerPackageName, String password, in byte[] token, int flags)472 boolean resetPasswordWithToken(in ComponentName admin, String callerPackageName, String password, in byte[] token, int flags); 473 isCurrentInputMethodSetByOwner()474 boolean isCurrentInputMethodSetByOwner(); getOwnerInstalledCaCerts(in UserHandle user)475 StringParceledListSlice getOwnerInstalledCaCerts(in UserHandle user); 476 clearApplicationUserData(in ComponentName admin, in String packageName, in IPackageDataObserver callback)477 void clearApplicationUserData(in ComponentName admin, in String packageName, in IPackageDataObserver callback); 478 setLogoutEnabled(in ComponentName admin, boolean enabled)479 void setLogoutEnabled(in ComponentName admin, boolean enabled); isLogoutEnabled()480 boolean isLogoutEnabled(); 481 getDisallowedSystemApps(in ComponentName admin, int userId, String provisioningAction)482 List<String> getDisallowedSystemApps(in ComponentName admin, int userId, String provisioningAction); 483 transferOwnership(in ComponentName admin, in ComponentName target, in PersistableBundle bundle)484 void transferOwnership(in ComponentName admin, in ComponentName target, in PersistableBundle bundle); getTransferOwnershipBundle()485 PersistableBundle getTransferOwnershipBundle(); 486 setStartUserSessionMessage(in ComponentName admin, in CharSequence startUserSessionMessage)487 void setStartUserSessionMessage(in ComponentName admin, in CharSequence startUserSessionMessage); setEndUserSessionMessage(in ComponentName admin, in CharSequence endUserSessionMessage)488 void setEndUserSessionMessage(in ComponentName admin, in CharSequence endUserSessionMessage); getStartUserSessionMessage(in ComponentName admin)489 CharSequence getStartUserSessionMessage(in ComponentName admin); getEndUserSessionMessage(in ComponentName admin)490 CharSequence getEndUserSessionMessage(in ComponentName admin); 491 setMeteredDataDisabledPackages(in ComponentName admin, in List<String> packageNames)492 List<String> setMeteredDataDisabledPackages(in ComponentName admin, in List<String> packageNames); getMeteredDataDisabledPackages(in ComponentName admin)493 List<String> getMeteredDataDisabledPackages(in ComponentName admin); 494 addOverrideApn(in ComponentName admin, in ApnSetting apnSetting)495 int addOverrideApn(in ComponentName admin, in ApnSetting apnSetting); updateOverrideApn(in ComponentName admin, int apnId, in ApnSetting apnSetting)496 boolean updateOverrideApn(in ComponentName admin, int apnId, in ApnSetting apnSetting); removeOverrideApn(in ComponentName admin, int apnId)497 boolean removeOverrideApn(in ComponentName admin, int apnId); getOverrideApns(in ComponentName admin)498 List<ApnSetting> getOverrideApns(in ComponentName admin); setOverrideApnsEnabled(in ComponentName admin, boolean enabled)499 void setOverrideApnsEnabled(in ComponentName admin, boolean enabled); isOverrideApnEnabled(in ComponentName admin)500 boolean isOverrideApnEnabled(in ComponentName admin); 501 isMeteredDataDisabledPackageForUser(in ComponentName admin, String packageName, int userId)502 boolean isMeteredDataDisabledPackageForUser(in ComponentName admin, String packageName, int userId); 503 setGlobalPrivateDns(in ComponentName admin, int mode, in String privateDnsHost)504 int setGlobalPrivateDns(in ComponentName admin, int mode, in String privateDnsHost); getGlobalPrivateDnsMode(in ComponentName admin)505 int getGlobalPrivateDnsMode(in ComponentName admin); getGlobalPrivateDnsHost(in ComponentName admin)506 String getGlobalPrivateDnsHost(in ComponentName admin); 507 setProfileOwnerOnOrganizationOwnedDevice(in ComponentName who, int userId, boolean isProfileOwnerOnOrganizationOwnedDevice)508 void setProfileOwnerOnOrganizationOwnedDevice(in ComponentName who, int userId, boolean isProfileOwnerOnOrganizationOwnedDevice); 509 installUpdateFromFile(in ComponentName admin, String callerPackageName, in ParcelFileDescriptor updateFileDescriptor, in StartInstallingUpdateCallback listener)510 void installUpdateFromFile(in ComponentName admin, String callerPackageName, in ParcelFileDescriptor updateFileDescriptor, in StartInstallingUpdateCallback listener); 511 setCrossProfileCalendarPackages(in ComponentName admin, in List<String> packageNames)512 void setCrossProfileCalendarPackages(in ComponentName admin, in List<String> packageNames); getCrossProfileCalendarPackages(in ComponentName admin)513 List<String> getCrossProfileCalendarPackages(in ComponentName admin); isPackageAllowedToAccessCalendarForUser(String packageName, int userHandle)514 boolean isPackageAllowedToAccessCalendarForUser(String packageName, int userHandle); getCrossProfileCalendarPackagesForUser(int userHandle)515 List<String> getCrossProfileCalendarPackagesForUser(int userHandle); 516 setCrossProfilePackages(in ComponentName admin, in List<String> packageNames)517 void setCrossProfilePackages(in ComponentName admin, in List<String> packageNames); getCrossProfilePackages(in ComponentName admin)518 List<String> getCrossProfilePackages(in ComponentName admin); 519 getAllCrossProfilePackages(int userId)520 List<String> getAllCrossProfilePackages(int userId); getDefaultCrossProfilePackages()521 List<String> getDefaultCrossProfilePackages(); 522 isManagedKiosk()523 boolean isManagedKiosk(); isUnattendedManagedKiosk()524 boolean isUnattendedManagedKiosk(); 525 startViewCalendarEventInManagedProfile(String packageName, long eventId, long start, long end, boolean allDay, int flags)526 boolean startViewCalendarEventInManagedProfile(String packageName, long eventId, long start, long end, boolean allDay, int flags); 527 setKeyGrantForApp(in ComponentName admin, String callerPackage, String alias, String packageName, boolean hasGrant)528 boolean setKeyGrantForApp(in ComponentName admin, String callerPackage, String alias, String packageName, boolean hasGrant); getKeyPairGrants(in String callerPackage, in String alias)529 ParcelableGranteeMap getKeyPairGrants(in String callerPackage, in String alias); setKeyGrantToWifiAuth(String callerPackage, String alias, boolean hasGrant)530 boolean setKeyGrantToWifiAuth(String callerPackage, String alias, boolean hasGrant); isKeyPairGrantedToWifiAuth(String callerPackage, String alias)531 boolean isKeyPairGrantedToWifiAuth(String callerPackage, String alias); 532 setUserControlDisabledPackages(in ComponentName admin, String callerPackageName, in List<String> packages)533 void setUserControlDisabledPackages(in ComponentName admin, String callerPackageName, in List<String> packages); 534 getUserControlDisabledPackages(in ComponentName admin, String callerPackageName)535 List<String> getUserControlDisabledPackages(in ComponentName admin, String callerPackageName); 536 setCommonCriteriaModeEnabled(in ComponentName admin, String callerPackageName, boolean enabled)537 void setCommonCriteriaModeEnabled(in ComponentName admin, String callerPackageName, boolean enabled); isCommonCriteriaModeEnabled(in ComponentName admin)538 boolean isCommonCriteriaModeEnabled(in ComponentName admin); 539 getPersonalAppsSuspendedReasons(in ComponentName admin)540 int getPersonalAppsSuspendedReasons(in ComponentName admin); setPersonalAppsSuspended(in ComponentName admin, boolean suspended)541 void setPersonalAppsSuspended(in ComponentName admin, boolean suspended); 542 getManagedProfileMaximumTimeOff(in ComponentName admin)543 long getManagedProfileMaximumTimeOff(in ComponentName admin); setManagedProfileMaximumTimeOff(in ComponentName admin, long timeoutMs)544 void setManagedProfileMaximumTimeOff(in ComponentName admin, long timeoutMs); 545 acknowledgeDeviceCompliant()546 void acknowledgeDeviceCompliant(); isComplianceAcknowledgementRequired()547 boolean isComplianceAcknowledgementRequired(); 548 canProfileOwnerResetPasswordWhenLocked(int userId)549 boolean canProfileOwnerResetPasswordWhenLocked(int userId); 550 setNextOperationSafety(int operation, int reason)551 void setNextOperationSafety(int operation, int reason); isSafeOperation(int reason)552 boolean isSafeOperation(int reason); 553 getEnrollmentSpecificId(String callerPackage)554 String getEnrollmentSpecificId(String callerPackage); setOrganizationIdForUser(in String callerPackage, in String enterpriseId, int userId)555 void setOrganizationIdForUser(in String callerPackage, in String enterpriseId, int userId); 556 createAndProvisionManagedProfile(in ManagedProfileProvisioningParams provisioningParams, in String callerPackage)557 UserHandle createAndProvisionManagedProfile(in ManagedProfileProvisioningParams provisioningParams, in String callerPackage); provisionFullyManagedDevice(in FullyManagedDeviceProvisioningParams provisioningParams, in String callerPackage)558 void provisionFullyManagedDevice(in FullyManagedDeviceProvisioningParams provisioningParams, in String callerPackage); 559 finalizeWorkProfileProvisioning(in UserHandle managedProfileUser, in Account migratedAccount)560 void finalizeWorkProfileProvisioning(in UserHandle managedProfileUser, in Account migratedAccount); 561 setDeviceOwnerType(in ComponentName admin, in int deviceOwnerType)562 void setDeviceOwnerType(in ComponentName admin, in int deviceOwnerType); getDeviceOwnerType(in ComponentName admin)563 int getDeviceOwnerType(in ComponentName admin); 564 resetDefaultCrossProfileIntentFilters(int userId)565 void resetDefaultCrossProfileIntentFilters(int userId); canAdminGrantSensorsPermissions()566 boolean canAdminGrantSensorsPermissions(); 567 setUsbDataSignalingEnabled(String callerPackage, boolean enabled)568 void setUsbDataSignalingEnabled(String callerPackage, boolean enabled); isUsbDataSignalingEnabled(String callerPackage)569 boolean isUsbDataSignalingEnabled(String callerPackage); isUsbDataSignalingEnabledForUser(int userId)570 boolean isUsbDataSignalingEnabledForUser(int userId); canUsbDataSignalingBeDisabled()571 boolean canUsbDataSignalingBeDisabled(); 572 setMinimumRequiredWifiSecurityLevel(String callerPackageName, int level)573 void setMinimumRequiredWifiSecurityLevel(String callerPackageName, int level); getMinimumRequiredWifiSecurityLevel()574 int getMinimumRequiredWifiSecurityLevel(); 575 setWifiSsidPolicy(String callerPackageName, in WifiSsidPolicy policy)576 void setWifiSsidPolicy(String callerPackageName, in WifiSsidPolicy policy); getWifiSsidPolicy(String callerPackageName)577 WifiSsidPolicy getWifiSsidPolicy(String callerPackageName); 578 listForegroundAffiliatedUsers()579 List<UserHandle> listForegroundAffiliatedUsers(); setDrawables(in List<DevicePolicyDrawableResource> drawables)580 void setDrawables(in List<DevicePolicyDrawableResource> drawables); resetDrawables(in List<String> drawableIds)581 void resetDrawables(in List<String> drawableIds); getDrawable(String drawableId, String drawableStyle, String drawableSource)582 ParcelableResource getDrawable(String drawableId, String drawableStyle, String drawableSource); 583 isDpcDownloaded()584 boolean isDpcDownloaded(); setDpcDownloaded(boolean downloaded)585 void setDpcDownloaded(boolean downloaded); 586 setStrings(in List<DevicePolicyStringResource> strings)587 void setStrings(in List<DevicePolicyStringResource> strings); resetStrings(in List<String> stringIds)588 void resetStrings(in List<String> stringIds); getString(String stringId)589 ParcelableResource getString(String stringId); 590 resetShouldAllowBypassingDevicePolicyManagementRoleQualificationState()591 void resetShouldAllowBypassingDevicePolicyManagementRoleQualificationState(); shouldAllowBypassingDevicePolicyManagementRoleQualification()592 boolean shouldAllowBypassingDevicePolicyManagementRoleQualification(); 593 getPolicyManagedProfiles(in UserHandle userHandle)594 List<UserHandle> getPolicyManagedProfiles(in UserHandle userHandle); 595 setApplicationExemptions(String callerPackage, String packageName, in int[]exemptions)596 void setApplicationExemptions(String callerPackage, String packageName, in int[]exemptions); getApplicationExemptions(String packageName)597 int[] getApplicationExemptions(String packageName); 598 setMtePolicy(int flag, String callerPackageName)599 void setMtePolicy(int flag, String callerPackageName); getMtePolicy(String callerPackageName)600 int getMtePolicy(String callerPackageName); 601 setManagedSubscriptionsPolicy(in ManagedSubscriptionsPolicy policy)602 void setManagedSubscriptionsPolicy(in ManagedSubscriptionsPolicy policy); getManagedSubscriptionsPolicy()603 ManagedSubscriptionsPolicy getManagedSubscriptionsPolicy(); 604 getDevicePolicyState()605 DevicePolicyState getDevicePolicyState(); 606 setOverrideKeepProfilesRunning(boolean enabled)607 void setOverrideKeepProfilesRunning(boolean enabled); 608 triggerDevicePolicyEngineMigration(boolean forceMigration)609 boolean triggerDevicePolicyEngineMigration(boolean forceMigration); 610 isDeviceFinanced(String callerPackageName)611 boolean isDeviceFinanced(String callerPackageName); getFinancedDeviceKioskRoleHolder(String callerPackageName)612 String getFinancedDeviceKioskRoleHolder(String callerPackageName); 613 calculateHasIncompatibleAccounts()614 void calculateHasIncompatibleAccounts(); 615 } 616