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.content.ComponentName; 21 import android.os.RemoteCallback; 22 23 /** 24 * Internal IPC interface to the device policy service. 25 * {@hide} 26 */ 27 interface IDevicePolicyManager { 28 void setPasswordQuality(in ComponentName who, int quality, int userHandle); 29 int getPasswordQuality(in ComponentName who, int userHandle); 30 31 void setPasswordMinimumLength(in ComponentName who, int length, int userHandle); 32 int getPasswordMinimumLength(in ComponentName who, int userHandle); 33 34 void setPasswordMinimumUpperCase(in ComponentName who, int length, int userHandle); 35 int getPasswordMinimumUpperCase(in ComponentName who, int userHandle); 36 37 void setPasswordMinimumLowerCase(in ComponentName who, int length, int userHandle); 38 int getPasswordMinimumLowerCase(in ComponentName who, int userHandle); 39 40 void setPasswordMinimumLetters(in ComponentName who, int length, int userHandle); 41 int getPasswordMinimumLetters(in ComponentName who, int userHandle); 42 43 void setPasswordMinimumNumeric(in ComponentName who, int length, int userHandle); 44 int getPasswordMinimumNumeric(in ComponentName who, int userHandle); 45 46 void setPasswordMinimumSymbols(in ComponentName who, int length, int userHandle); 47 int getPasswordMinimumSymbols(in ComponentName who, int userHandle); 48 49 void setPasswordMinimumNonLetter(in ComponentName who, int length, int userHandle); 50 int getPasswordMinimumNonLetter(in ComponentName who, int userHandle); 51 52 void setPasswordHistoryLength(in ComponentName who, int length, int userHandle); 53 int getPasswordHistoryLength(in ComponentName who, int userHandle); 54 55 void setPasswordExpirationTimeout(in ComponentName who, long expiration, int userHandle); 56 long getPasswordExpirationTimeout(in ComponentName who, int userHandle); 57 58 long getPasswordExpiration(in ComponentName who, int userHandle); 59 60 boolean isActivePasswordSufficient(int userHandle); 61 int getCurrentFailedPasswordAttempts(int userHandle); 62 63 void setMaximumFailedPasswordsForWipe(in ComponentName admin, int num, int userHandle); 64 int getMaximumFailedPasswordsForWipe(in ComponentName admin, int userHandle); 65 66 boolean resetPassword(String password, int flags, int userHandle); 67 68 void setMaximumTimeToLock(in ComponentName who, long timeMs, int userHandle); 69 long getMaximumTimeToLock(in ComponentName who, int userHandle); 70 71 void lockNow(); 72 73 void wipeData(int flags, int userHandle); 74 75 ComponentName setGlobalProxy(in ComponentName admin, String proxySpec, String exclusionList, int userHandle); 76 ComponentName getGlobalProxyAdmin(int userHandle); 77 78 int setStorageEncryption(in ComponentName who, boolean encrypt, int userHandle); 79 boolean getStorageEncryption(in ComponentName who, int userHandle); 80 int getStorageEncryptionStatus(int userHandle); 81 82 void setCameraDisabled(in ComponentName who, boolean disabled, int userHandle); 83 boolean getCameraDisabled(in ComponentName who, int userHandle); 84 85 void setKeyguardDisabledFeatures(in ComponentName who, int which, int userHandle); 86 int getKeyguardDisabledFeatures(in ComponentName who, int userHandle); 87 88 void setActiveAdmin(in ComponentName policyReceiver, boolean refreshing, int userHandle); 89 boolean isAdminActive(in ComponentName policyReceiver, int userHandle); 90 List<ComponentName> getActiveAdmins(int userHandle); 91 boolean packageHasActiveAdmins(String packageName, int userHandle); 92 void getRemoveWarning(in ComponentName policyReceiver, in RemoteCallback result, int userHandle); 93 void removeActiveAdmin(in ComponentName policyReceiver, int userHandle); 94 boolean hasGrantedPolicy(in ComponentName policyReceiver, int usesPolicy, int userHandle); 95 96 void setActivePasswordState(int quality, int length, int letters, int uppercase, int lowercase, 97 int numbers, int symbols, int nonletter, int userHandle); 98 void reportFailedPasswordAttempt(int userHandle); 99 void reportSuccessfulPasswordAttempt(int userHandle); 100 } 101