Search in sources :

Example 81 with LockPatternUtils

use of com.android.internal.widget.LockPatternUtils in project android_frameworks_base by ResurrectionRemix.

the class DatabaseHelper method upgradeLockPatternLocation.

private void upgradeLockPatternLocation(SQLiteDatabase db) {
    Cursor c = db.query(TABLE_SYSTEM, new String[] { "_id", "value" }, "name='lock_pattern'", null, null, null, null);
    if (c.getCount() > 0) {
        c.moveToFirst();
        String lockPattern = c.getString(1);
        if (!TextUtils.isEmpty(lockPattern)) {
            // Convert lock pattern
            try {
                LockPatternUtils lpu = new LockPatternUtils(mContext);
                List<LockPatternView.Cell> cellPattern = LockPatternUtils.stringToPattern(lockPattern, lpu.getLockPatternSize(mUserHandle));
                lpu.saveLockPattern(cellPattern, null, UserHandle.USER_SYSTEM);
            } catch (IllegalArgumentException e) {
            // Don't want corrupted lock pattern to hang the reboot process
            }
        }
        c.close();
        db.delete(TABLE_SYSTEM, "name='lock_pattern'", null);
    } else {
        c.close();
    }
}
Also used : LockPatternUtils(com.android.internal.widget.LockPatternUtils) Cursor(android.database.Cursor)

Example 82 with LockPatternUtils

use of com.android.internal.widget.LockPatternUtils in project android_frameworks_base by ResurrectionRemix.

the class RetailDemoModeService method onSwitchUser.

@Override
public void onSwitchUser(int userId) {
    if (!mDeviceInDemoMode) {
        return;
    }
    if (DEBUG) {
        Slog.d(TAG, "onSwitchUser: " + userId);
    }
    final UserInfo ui = getUserManager().getUserInfo(userId);
    if (!ui.isDemo()) {
        Slog.wtf(TAG, "Should not allow switch to non-demo user in demo mode");
        return;
    }
    if (!mIsCarrierDemoMode && !mWakeLock.isHeld()) {
        mWakeLock.acquire();
    }
    mCurrentUserId = userId;
    mAmi.updatePersistentConfigurationForUser(getSystemUsersConfiguration(), userId);
    turnOffAllFlashLights();
    muteVolumeStreams();
    if (!mWifiManager.isWifiEnabled()) {
        mWifiManager.setWifiEnabled(true);
    }
    // Disable lock screen for demo users.
    LockPatternUtils lockPatternUtils = new LockPatternUtils(getContext());
    lockPatternUtils.setLockScreenDisabled(true, userId);
    if (!mIsCarrierDemoMode) {
        // Show reset notification (except in carrier demo mode).
        mNm.notifyAsUser(TAG, 1, createResetNotification(), UserHandle.of(userId));
        synchronized (mActivityLock) {
            mUserUntouched = true;
        }
        MetricsLogger.count(getContext(), DEMO_SESSION_COUNT, 1);
        mHandler.removeMessages(MSG_INACTIVITY_TIME_OUT);
        mHandler.post(new Runnable() {

            @Override
            public void run() {
                mPreloadAppsInstaller.installApps(userId);
            }
        });
    }
}
Also used : LockPatternUtils(com.android.internal.widget.LockPatternUtils) UserInfo(android.content.pm.UserInfo)

Example 83 with LockPatternUtils

use of com.android.internal.widget.LockPatternUtils in project Resurrection_packages_apps_Settings by ResurrectionRemix.

the class Utils method unlockWorkProfileIfNecessary.

public static boolean unlockWorkProfileIfNecessary(Context context, int userId) {
    try {
        if (!ActivityManagerNative.getDefault().isUserRunning(userId, ActivityManager.FLAG_AND_LOCKED)) {
            return false;
        }
    } catch (RemoteException e) {
        return false;
    }
    if (!(new LockPatternUtils(context)).isSecure(userId)) {
        return false;
    }
    final KeyguardManager km = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
    final Intent unlockIntent = km.createConfirmDeviceCredentialIntent(null, null, userId);
    if (unlockIntent != null) {
        context.startActivity(unlockIntent);
        return true;
    } else {
        return false;
    }
}
Also used : LockPatternUtils(com.android.internal.widget.LockPatternUtils) Intent(android.content.Intent) RemoteException(android.os.RemoteException) KeyguardManager(android.app.KeyguardManager)

Example 84 with LockPatternUtils

use of com.android.internal.widget.LockPatternUtils in project Resurrection_packages_apps_Settings by ResurrectionRemix.

the class SetNewPasswordController method create.

public static SetNewPasswordController create(Context context, Ui ui, Intent intent, IBinder activityToken) {
    // Trying to figure out which user is setting new password. If it is
    // ACTION_SET_NEW_PARENT_PROFILE_PASSWORD or the calling user is not allowed to set
    // separate profile challenge, it is the current user to set new password. Otherwise,
    // it is the user who starts this activity setting new password.
    int userId = ActivityManager.getCurrentUser();
    if (ACTION_SET_NEW_PASSWORD.equals(intent.getAction())) {
        final int callingUserId = Utils.getSecureTargetUser(activityToken, UserManager.get(context), null, intent.getExtras()).getIdentifier();
        final LockPatternUtils lockPatternUtils = new LockPatternUtils(context);
        if (lockPatternUtils.isSeparateProfileChallengeAllowed(callingUserId)) {
            userId = callingUserId;
        }
    }
    // Create a wrapper of FingerprintManager for testing, see IFingerPrintManager for details.
    final FingerprintManager fingerprintManager = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
    final IFingerprintManager fingerprintManagerWrapper = fingerprintManager == null ? null : new FingerprintManagerWrapper(fingerprintManager);
    return new SetNewPasswordController(userId, context.getPackageManager(), fingerprintManagerWrapper, (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE), ui);
}
Also used : FingerprintManager(android.hardware.fingerprint.FingerprintManager) LockPatternUtils(com.android.internal.widget.LockPatternUtils)

Example 85 with LockPatternUtils

use of com.android.internal.widget.LockPatternUtils in project Resurrection_packages_apps_Settings by ResurrectionRemix.

the class CredentialStorage method checkKeyGuardQuality.

/**
     * Returns true if the currently set key guard matches our minimum quality requirements.
     */
private boolean checkKeyGuardQuality() {
    int credentialOwner = UserManager.get(this).getCredentialOwnerProfile(UserHandle.myUserId());
    int quality = new LockPatternUtils(this).getActivePasswordQuality(credentialOwner);
    return (quality >= MIN_PASSWORD_QUALITY);
}
Also used : LockPatternUtils(com.android.internal.widget.LockPatternUtils)

Aggregations

LockPatternUtils (com.android.internal.widget.LockPatternUtils)96 ComponentName (android.content.ComponentName)24 UserInfo (android.content.pm.UserInfo)24 DevicePolicyManager (android.app.admin.DevicePolicyManager)19 UserManager (android.os.UserManager)16 IOException (java.io.IOException)11 IntentFilter (android.content.IntentFilter)10 Intent (android.content.Intent)9 View (android.view.View)9 Cursor (android.database.Cursor)6 RemoteException (android.os.RemoteException)6 ArrayList (java.util.ArrayList)6 ContentResolver (android.content.ContentResolver)5 Configuration (android.content.res.Configuration)5 Rect (android.graphics.Rect)5 SoundPool (android.media.SoundPool)5 IBinder (android.os.IBinder)5 IVrManager (android.service.vr.IVrManager)5 StatusBarIcon (com.android.internal.statusbar.StatusBarIcon)5 KeyguardDisplayManager (com.android.keyguard.KeyguardDisplayManager)5