当前位置: 首页 > news >正文

做航模的网站西地那非片的功能主治

做航模的网站,西地那非片的功能主治,重庆科技建设信息网站,十大电商代运营排名参考如下修改:Android9.0在锁屏界面Keyguard输错5次密码后倒计时30秒时重启手机不显示倒计时_android 锁屏密码输错5次-CSDN博客 android 14 修改如下: androidap/SYSTEM/frameworks/base$ git status Refresh index: 100% (47218/47218), done. HEAD d…

参考如下修改:Android9.0在锁屏界面Keyguard输错5次密码后倒计时30秒时重启手机不显示倒计时_android 锁屏密码输错5次-CSDN博客

android 14 修改如下:


androidap/SYSTEM/frameworks/base$ git status
Refresh index: 100% (47218/47218), done.
HEAD detached from e83cd3f473f9modified:   core/java/android/provider/Settings.javamodified:   packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.javamodified:   packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.javaandroidap/SYSTEM/frameworks/base$ git diff
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 6d1594e011dc..7ccaa8cea477 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -4641,7 +4641,12 @@ public final class Settings {@Deprecated@Readablepublic static final String NEXT_ALARM_FORMATTED = "next_alarm_formatted";
-
+        /**
+         * @deprecated Use {@link android.provider.Settings.Secure#COUNT_DOWNTIME_UNLOCK}
+         * @hide
+         */
+        @Readable
+        public static final String COUNT_DOWNTIME_UNLOCK = "count_downtime_unlock";/*** Scaling factor for fonts, float.*/
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
index 12fccc59dc90..22b04826bc07 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
@@ -26,6 +26,12 @@ import android.os.CountDownTimer;import android.os.SystemClock;import android.util.PluralsMessageFormatter;import android.view.KeyEvent;
+import android.util.Log;
+import android.content.Context;
+import android.content.ContentResolver;
+import android.provider.Settings;
+import android.provider.Settings.Global;
+import android.provider.Settings.System;import com.android.internal.util.LatencyTracker;import com.android.internal.widget.LockPatternChecker;
@@ -54,7 +60,8 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeyprotected AsyncTask<?, ?, ?> mPendingLockCheck;protected boolean mResumed;protected boolean mLockedOut;
-
+    static final String LOG_TAG = "KeyguardAbsKeyInputViewController";
+    Context mContext;private final KeyDownListener mKeyDownListener = (keyCode, keyEvent) -> {// Fingerprint sensor sends a KeyEvent.KEYCODE_UNKNOWN.// We don't want to consider it valid user input because the UI
@@ -88,6 +95,7 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymLatencyTracker = latencyTracker;mFalsingCollector = falsingCollector;mEmergencyButtonController = emergencyButtonController;
+        mContext=getContext();}abstract void resetState();
@@ -111,6 +119,26 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymDismissing = false;mView.resetPasswordText(false /* animate */, false /* announce */);resetState();
+        long deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+
+
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== reset  deadline - deadline_new =" + timeuses);
+        if(timeuses > 30000){
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+
+            }
+        }else{
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);
+        }}@Override
@@ -156,6 +184,11 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeyarguments,R.string.kg_too_many_failed_attempts_countdown),/* animate= */ false);
+                Log.d(LOG_TAG, "== handleAttemptLockout  secondsRemaining = "+secondsRemaining);
+                if(secondsRemaining == 30){
+                    Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,1);
+
+                }}@Override
@@ -163,6 +196,9 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymMessageAreaController.setMessage("");mLockedOut = false;resetState();
+
+                Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);
+}}.start();}
@@ -281,8 +317,33 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKey// if the user is currently locked out, enforce it.long deadline = mLockPatternUtils.getLockoutAttemptDeadline(KeyguardUpdateMonitor.getCurrentUser());
+
+
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== onResume  deadline - deadline_new =" + timeuses);
+
+
+        if(timeuses > 30000) {
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+
+            }
+        }
+        deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+
+if (shouldLockout(deadline)) {
+handleAttemptLockout(deadline);
+        }else{
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);}}diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
index 2239556e4fd3..b3ba37cb70d3 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
@@ -27,6 +27,13 @@ import android.util.PluralsMessageFormatter;import android.view.MotionEvent;import android.view.View;+import android.util.Log;
+import android.content.Context;
+import android.content.ContentResolver;
+import android.provider.Settings;
+import android.provider.Settings.Global;
+import android.provider.Settings.System;
+import com.android.internal.util.LatencyTracker;import com.android.internal.widget.LockPatternChecker;import com.android.internal.widget.LockPatternUtils;
@@ -66,6 +73,9 @@ public class KeyguardPatternViewControllerprivate CountDownTimer mCountdownTimer;private AsyncTask<?, ?, ?> mPendingLockCheck;+    static final String LOG_TAG = "KeyguardPatternViewController";
+    Context mContext;
+private EmergencyButtonCallback mEmergencyButtonCallback = new EmergencyButtonCallback() {@Overridepublic void onEmergencyButtonClickedWhenInCall() {
@@ -208,8 +218,10 @@ public class KeyguardPatternViewControllermEmergencyButtonController = emergencyButtonController;mLockPatternView = mView.findViewById(R.id.lockPatternView);mPostureController = postureController;
+        mContext=getContext();}+@Overridepublic void onInit() {super.onInit();
@@ -263,6 +275,26 @@ public class KeyguardPatternViewControllermLockPatternView.clearPattern();displayDefaultSecurityMessage();
+        long deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+
+
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== reset  deadline - deadline_new =" + timeuses);
+        if(timeuses > 30000){
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+
+            }
+        }else{
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);
+        }}@Override
@@ -271,8 +303,34 @@ public class KeyguardPatternViewController// if the user is currently locked out, enforce it.long deadline = mLockPatternUtils.getLockoutAttemptDeadline(KeyguardUpdateMonitor.getCurrentUser());
+
+
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== onResume  deadline - deadline_new =" + timeuses);
+
+
+        if(timeuses > 30000) {
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+
+            }
+        }
+
+        deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+
+if (deadline != 0) {
+handleAttemptLockout(deadline);
+        }else{
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);}}@@ -384,12 +442,19 @@ public class KeyguardPatternViewControllerR.string.kg_too_many_failed_attempts_countdown),/* animate= */ false);
+                Log.d(LOG_TAG, "== handleAttemptLockout  secondsRemaining = "+secondsRemaining);
+                if(secondsRemaining == 30){
+                    Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,1);
+
+                }}@Overridepublic void onFinish() {mLockPatternView.setEnabled(true);displayDefaultSecurityMessage();
+                Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);
+}}.start();

android12 修改如下:

androidap/QSSI12/frameworks/base$ git status
Refresh index: 100% (40261/40261), done.
HEAD detached at d7cf647c5f4dmodified:   core/java/android/provider/Settings.javamodified:   packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.javamodified:   packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.javaandroidap/QSSI12/frameworks/base$ git diff
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index e7a8e8a1a80c..44d56b41f745 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -4250,7 +4250,12 @@ public final class Settings {@Deprecated@Readablepublic static final String NEXT_ALARM_FORMATTED = "next_alarm_formatted";
-
+        /**
+         * @deprecated Use {@link android.provider.Settings.Secure#COUNT_DOWNTIME_UNLOCK}
+         * @hide
+         */
+        @Readable
+        public static final String COUNT_DOWNTIME_UNLOCK = "count_downtime_unlock";/*** Scaling factor for fonts, float.*/diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
index eb5e39e769fc..6614290b4418 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardAbsKeyInputViewController.java
@@ -26,6 +26,13 @@ import android.os.AsyncTask;import android.os.CountDownTimer;import android.os.SystemClock;import android.view.KeyEvent;
+import android.util.Log;
+
+import android.content.Context;
+import android.content.ContentResolver;
+import android.provider.Settings;
+import android.provider.Settings.Global;
+import android.provider.Settings.System;import com.android.internal.util.LatencyTracker;import com.android.internal.widget.LockPatternChecker;
@@ -50,7 +57,8 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeyprivate boolean mDismissing;protected AsyncTask<?, ?, ?> mPendingLockCheck;protected boolean mResumed;
-
+    static final String LOG_TAG = "KeyguardAbsKeyInputViewController";
+    Context mContext;private final KeyDownListener mKeyDownListener = (keyCode, keyEvent) -> {// Fingerprint sensor sends a KeyEvent.KEYCODE_UNKNOWN.// We don't want to consider it valid user input because the UI
@@ -84,6 +92,7 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymEmergencyButtonController = emergencyButtonController;KeyguardMessageArea kma = KeyguardMessageArea.findSecurityMessageDisplay(mView);mMessageAreaController = messageAreaControllerFactory.create(kma);
+        mContext=getContext();}abstract void resetState();
@@ -91,6 +100,8 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKey@Overridepublic void onInit() {super.onInit();mMessageAreaController.init();}@@ -107,13 +118,43 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKey// start freshmDismissing = false;mView.resetPasswordText(false /* animate */, false /* announce */);// if the user is currently locked out, enforce it.long deadline = mLockPatternUtils.getLockoutAttemptDeadline(KeyguardUpdateMonitor.getCurrentUser());
+
+        Log.d(LOG_TAG, "== reset deadline =" + deadline);
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+        Log.d(LOG_TAG, "== reset deadline_new =" + deadline_new);
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== reset  deadline - deadline_new =" + timeuses);
+
+        Log.d(LOG_TAG, "== reset() COUNT_DOWNTIME_UNLOCK ="+Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0));
+        if(timeuses > 30000) {
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+                Log.d(LOG_TAG, "== reset(inside)  handleAttemptLockout(mDeadline)" + mDeadline);
+            }
+        }
+        deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+
+if (shouldLockout(deadline)) {
+
+            Log.d(LOG_TAG, "== reset deadline shouldLockout(deadline)=" + deadline );
+handleAttemptLockout(deadline);} else {resetState();
+            Log.d(LOG_TAG, "== reset() else resetState() COUNT_DOWNTIME_UNLOCK ="+Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0));
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);}}@@ -146,8 +187,16 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeyprotected void handleAttemptLockout(long elapsedRealtimeDeadline) {mView.setPasswordEntryEnabled(false);long elapsedRealtime = SystemClock.elapsedRealtime();
-        long secondsInFuture = (long) Math.ceil(
-                (elapsedRealtimeDeadline - elapsedRealtime) / 1000.0);
+        long secondsInFuture =0;
+        long timeuses =0;
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtimeDeadline =" + elapsedRealtimeDeadline);
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtime =" + elapsedRealtime);
+        timeuses=(long) Math.abs(elapsedRealtimeDeadline - elapsedRealtime);
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtimeDeadline - elapsedRealtime =" + timeuses);
+        secondsInFuture = (long) Math.ceil(
+                    (elapsedRealtimeDeadline - elapsedRealtime) / 1000.0);
+
+mCountdownTimer = new CountDownTimer(secondsInFuture * 1000, 1000) {@Override
@@ -156,12 +205,19 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymMessageAreaController.setMessage(mView.getResources().getQuantityString(R.plurals.kg_too_many_failed_attempts_countdown,secondsRemaining, secondsRemaining));
-            }+                Log.d(LOG_TAG, "== handleAttemptLockout  secondsRemaining = "+secondsRemaining);
+                if(secondsRemaining == 30){
+                    Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,1);
+
+                  }
+            }@Overridepublic void onFinish() {mMessageAreaController.setMessage("");resetState();
+                Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);
+}}.start();}
@@ -182,6 +238,7 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeyif (timeoutMs > 0) {long deadline = mLockPatternUtils.setLockoutAttemptDeadline(userId, timeoutMs);
+handleAttemptLockout(deadline);}}
@@ -286,6 +343,8 @@ public abstract class KeyguardAbsKeyInputViewController<T extends KeyguardAbsKeymPendingLockCheck.cancel(false);mPendingLockCheck = null;}
-        reset();
+        if (Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0) == 0 && mCountdownTimer == null ) {
+            reset();
+        }}}
diff --git a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
index 60d56503f73b..99ba0e56fe58 100644
--- a/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
+++ b/packages/SystemUI/src/com/android/keyguard/KeyguardPatternViewController.java
@@ -25,6 +25,13 @@ import android.os.CountDownTimer;import android.os.SystemClock;import android.view.MotionEvent;import android.view.View;
+import android.util.Log;
+
+import android.content.Context;
+import android.content.ContentResolver;
+import android.provider.Settings;
+import android.provider.Settings.Global;
+import android.provider.Settings.System;import com.android.internal.util.LatencyTracker;import com.android.internal.widget.LockPatternChecker;
@@ -65,7 +72,8 @@ public class KeyguardPatternViewControllerprivate LockPatternView mLockPatternView;private CountDownTimer mCountdownTimer;private AsyncTask<?, ?, ?> mPendingLockCheck;
-
+    static final String LOG_TAG = "KeyguardPatternViewController";
+    Context mContext;private EmergencyButtonCallback mEmergencyButtonCallback = new EmergencyButtonCallback() {@Overridepublic void onEmergencyButtonClickedWhenInCall() {
@@ -178,6 +186,7 @@ public class KeyguardPatternViewControllerif (timeoutMs > 0) {long deadline = mLockPatternUtils.setLockoutAttemptDeadline(userId, timeoutMs);
+handleAttemptLockout(deadline);}}
@@ -210,6 +219,7 @@ public class KeyguardPatternViewControllermMessageAreaController = mMessageAreaControllerFactory.create(kma);mLockPatternView = mView.findViewById(R.id.lockPatternView);mPostureController = postureController;
+        mContext=getContext();}@Override
@@ -270,10 +280,36 @@ public class KeyguardPatternViewController// if the user is currently locked out, enforce it.long deadline = mLockPatternUtils.getLockoutAttemptDeadline(KeyguardUpdateMonitor.getCurrentUser());
+
+        Log.d(LOG_TAG, "== reset deadline =" + deadline);
+        long deadline_new = SystemClock.elapsedRealtime();
+        long timeuses =0;
+
+        Log.d(LOG_TAG, "== reset deadline_new =" + deadline_new);
+        timeuses=(long) Math.abs(deadline - deadline_new);
+        Log.d(LOG_TAG, "== reset  deadline - deadline_new =" + timeuses);
+
+        Log.d(LOG_TAG, "== reset() COUNT_DOWNTIME_UNLOCK ="+Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0));
+        if(timeuses > 30000) {
+            if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.COUNT_DOWNTIME_UNLOCK, 0) == 1 && mCountdownTimer == null) {
+                long mDeadline = mLockPatternUtils.setLockoutAttemptDeadline(
+                        KeyguardUpdateMonitor.getCurrentUser(), 30000);
+                Log.d(LOG_TAG, "== reset(inside)  handleAttemptLockout(mDeadline)" + mDeadline);
+            }
+        }
+        deadline = mLockPatternUtils.getLockoutAttemptDeadline(
+                KeyguardUpdateMonitor.getCurrentUser());
+if (deadline != 0) {
+
+            Log.d(LOG_TAG, "== reset deadline =" + deadline);
+handleAttemptLockout(deadline);} else {displayDefaultSecurityMessage();
+            Log.d(LOG_TAG, "== reset() else resetState() COUNT_DOWNTIME_UNLOCK ="+Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0));
+
+            Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);}}@@ -301,6 +337,9 @@ public class KeyguardPatternViewControllermPendingLockCheck = null;}displayDefaultSecurityMessage();
+        if (Settings.System.getInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0) == 0 && mCountdownTimer == null ) {
+            reset();
+        }}@Override
@@ -362,8 +401,24 @@ public class KeyguardPatternViewControllermLockPatternView.clearPattern();mLockPatternView.setEnabled(false);final long elapsedRealtime = SystemClock.elapsedRealtime();
-        final long secondsInFuture = (long) Math.ceil(
-                (elapsedRealtimeDeadline - elapsedRealtime) / 1000.0);
+   /*     final long secondsInFuture = (long) Math.ceil(
+                (elapsedRealtimeDeadline - elapsedRealtime) / 1000.0);*/
+        long secondsInFuture =0;
+        long timeuses =0;
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtimeDeadline =" + elapsedRealtimeDeadline);
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtime =" + elapsedRealtime);
+        timeuses=(long) Math.abs(elapsedRealtimeDeadline - elapsedRealtime);
+        Log.d(LOG_TAG, "== handleAttemptLockout elapsedRealtimeDeadline - elapsedRealtime =" + timeuses);
+
+        if (timeuses > 30000){
+            secondsInFuture =(long) Math.ceil((30000.0) / 1000.0);
+
+        }else {
+            secondsInFuture = (long) Math.ceil(
+                    (elapsedRealtimeDeadline - elapsedRealtime) / 1000.0);
+
+        }
+mCountdownTimer = new CountDownTimer(secondsInFuture * 1000, 1000) {@Override
@@ -372,12 +427,18 @@ public class KeyguardPatternViewControllermMessageAreaController.setMessage(mView.getResources().getQuantityString(R.plurals.kg_too_many_failed_attempts_countdown,secondsRemaining, secondsRemaining));
+                Log.d(LOG_TAG, "== handleAttemptLockout  secondsRemaining = "+secondsRemaining);
+                if(secondsRemaining == 30){
+                    Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,1);
+
+                }}@Overridepublic void onFinish() {mLockPatternView.setEnabled(true);displayDefaultSecurityMessage();
+                Settings.System.putInt(mContext.getContentResolver(),Settings.System.COUNT_DOWNTIME_UNLOCK,0);}}.start();


文章转载自:
http://wanjiapseudomycelium.rywn.cn
http://wanjiabowing.rywn.cn
http://wanjiaprecipitation.rywn.cn
http://wanjiadihydro.rywn.cn
http://wanjiaroily.rywn.cn
http://wanjiacenote.rywn.cn
http://wanjiaglaum.rywn.cn
http://wanjiahabitan.rywn.cn
http://wanjiadioicous.rywn.cn
http://wanjiaswg.rywn.cn
http://wanjianeuropathist.rywn.cn
http://wanjiachickling.rywn.cn
http://wanjiafidge.rywn.cn
http://wanjiaposting.rywn.cn
http://wanjiaappraisingly.rywn.cn
http://wanjiabootes.rywn.cn
http://wanjiasonal.rywn.cn
http://wanjiaradiotherapist.rywn.cn
http://wanjiaflench.rywn.cn
http://wanjiaunspell.rywn.cn
http://wanjiamadden.rywn.cn
http://wanjiaintermezzo.rywn.cn
http://wanjiakeyswitch.rywn.cn
http://wanjiaseen.rywn.cn
http://wanjiadominator.rywn.cn
http://wanjiacentralia.rywn.cn
http://wanjiasubstantially.rywn.cn
http://wanjiaaep.rywn.cn
http://wanjiaeruciform.rywn.cn
http://wanjiamahaleb.rywn.cn
http://wanjiabam.rywn.cn
http://wanjiarecommendable.rywn.cn
http://wanjiaventriculoperitoneal.rywn.cn
http://wanjiaskiver.rywn.cn
http://wanjiabroche.rywn.cn
http://wanjiaglossopharyngeal.rywn.cn
http://wanjiainextricably.rywn.cn
http://wanjiacytovirin.rywn.cn
http://wanjiaresistante.rywn.cn
http://wanjiaveal.rywn.cn
http://wanjiabureaux.rywn.cn
http://wanjiadisapprovingly.rywn.cn
http://wanjiahandloader.rywn.cn
http://wanjiaterpsichore.rywn.cn
http://wanjiafiord.rywn.cn
http://wanjiaradicalization.rywn.cn
http://wanjiairishism.rywn.cn
http://wanjiachinaman.rywn.cn
http://wanjiamelitopol.rywn.cn
http://wanjiaspodosol.rywn.cn
http://wanjiaescharotic.rywn.cn
http://wanjialipide.rywn.cn
http://wanjialunar.rywn.cn
http://wanjiacustom.rywn.cn
http://wanjiaunworthy.rywn.cn
http://wanjiaringtoss.rywn.cn
http://wanjiapussy.rywn.cn
http://wanjiaphotopile.rywn.cn
http://wanjiaknawel.rywn.cn
http://wanjiasplenold.rywn.cn
http://wanjialondon.rywn.cn
http://wanjiapriam.rywn.cn
http://wanjiapath.rywn.cn
http://wanjiascutum.rywn.cn
http://wanjiakeitloa.rywn.cn
http://wanjiasabrecut.rywn.cn
http://wanjialubber.rywn.cn
http://wanjiatruelove.rywn.cn
http://wanjiamaytime.rywn.cn
http://wanjiaovercooked.rywn.cn
http://wanjiaderogation.rywn.cn
http://wanjiapyromancy.rywn.cn
http://wanjiaionogen.rywn.cn
http://wanjiavainglorious.rywn.cn
http://wanjialandmine.rywn.cn
http://wanjiaevaporable.rywn.cn
http://wanjiahebrides.rywn.cn
http://wanjiamillesimal.rywn.cn
http://wanjiaautocephalous.rywn.cn
http://wanjiadipper.rywn.cn
http://www.15wanjia.com/news/113082.html

相关文章:

  • ps切图做网站中文搜索引擎
  • 什么网站能免费做公众号封面看书网站排名
  • 长春做网站哪家好seo优化设计
  • 网络营销策略组合网络关键词优化软件
  • 国外b站追剧免费版软件下载营销型网站建设流程
  • 建设社区网站有什么借鉴之处女教师遭网课入侵直播
  • 新加坡网站制作求几个好看的关键词
  • 中小型网站建设怎么样steam交易链接在哪里
  • 建站公司建的网站能改动吗2022年7到8月份的十大新闻
  • 现在什么网站做推广比较好aso优化榜单
  • wordpress获取菜单seo排名工具哪个好
  • 个人注册公司每年费用seo准
  • 自学网站建设好学吗竞价sem托管
  • 洛阳建设信息网站青岛疫情最新情况
  • 如何做二级域名网站友情链接检查工具
  • 魔兽做宏网站无锡seo排名收费
  • 如何使用模板做网站有域名后如何建网站
  • 菏泽做网站建设的公司优化推广网站推荐
  • 专做眼镜批发的网站seo推广网络
  • 武汉响应式网站制作网址提交百度收录
  • wordpress页面回收站位置防疫优化措施
  • 本地做网站教程今天国内最新消息
  • 黑龙江交通基础设施建设网站今日头条权重查询
  • 有什么做详情页的参考网站注册网站需要多少钱
  • 做好的网站模板怎么修改全网营销系统
  • 网站建设简运维 简历做网站公司哪家好
  • 怎么做购物网站大连头条热点新闻
  • 湖南手机网站制作公司网站推广优化服务
  • 广州新公司网站建设项目推广
  • 建设工程招标专业网站如何做线上推广