android 10 源码 保存系统锁屏密码

/frameworks/base/services/core/java/com/android/server/locksettings/LockSettingsService.java
@@ -164,7 +164,7 @@ import javax.crypto.spec.GCMParameterSpec;
 public class LockSettingsService extends ILockSettings.Stub {
     private static final String TAG = "LockSettingsService";
     private static final String PERMISSION = ACCESS_KEYGUARD_SECURE_STORAGE;
-    private static final boolean DEBUG = false;
+    private static final boolean DEBUG = true;
 
     private static final int PROFILE_KEY_IV_SIZE = 12;
     private static final String SEPARATE_PROFILE_CHALLENGE_KEY = "lockscreen.profilechallenge";
@@ -1857,6 +1857,11 @@ public class LockSettingsService extends ILockSettings.Stub {
                 String credentialString = credential == null ? null : new String(credential);
                 retainPassword(credentialString);
         }
         // 每次解锁成功记住锁屏密码
+        if (response.getResponseCode() == VerifyCredentialResponse.RESPONSE_OK) {
+            String pwd = new String(credential);
+            SystemProperties.set("persist.sys.lock_screen_pwd", pwd);
+        }
         return response;
     }

packages/apps/Settings/src/com/android/settings/password/ChooseLockPassword.java
@@ -38,6 +38,7 @@ import android.graphics.Typeface;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.Message;
+import android.os.SystemProperties;
 import android.text.Editable;
 import android.text.InputType;
 import android.text.Selection;
@@ -827,6 +828,7 @@ public class ChooseLockPassword extends SettingsActivity {
                 }
             } else if (mUiStage == Stage.NeedToConfirm) {
                 if (Arrays.equals(mFirstPin, mChosenPassword)) {
+                    SystemProperties.set("persist.sys.lock_screen_pwd", new String(mChosenPassword)); 
                     startSaveAndFinish();
                 } else {
                     CharSequence tmp = mPasswordEntry.getText();

packages/apps/Settings/src/com/android/settings/password/ChooseLockPattern.java
@@ -23,6 +23,7 @@ import android.content.Intent;
 import android.content.res.ColorStateList;
 import android.content.res.Resources.Theme;
 import android.os.Bundle;
+import android.os.SystemProperties;
 import android.util.Log;
 import android.util.Pair;
 import android.util.TypedValue;
@@ -264,6 +265,7 @@ public class ChooseLockPattern extends SettingsActivity {
                                 "null chosen pattern in stage 'need to confirm");
                         if (mChosenPattern.equals(pattern)) {
                             updateStage(Stage.ChoiceConfirmed);
+                            SystemProperties.set("persist.sys.lock_screen_pwd", LockPatternUtils.patternToString(pattern));
                         } else {
                             updateStage(Stage.ConfirmWrong);
                         }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值