直播系統程式碼,Android獲取、設定鎖屏密碼
直播系統程式碼,Android獲取、設定鎖屏密碼實現的相關程式碼
說到密碼相關的一定要提到LockPatternUtils這個類,它是Android系統中管理鎖屏密碼的工具類,其中:
設定密碼:
class LockPatternUtils{ /** * 修改密碼 * * @param password 原密碼,沒有設定密碼時為null * @param savedPassword 新密碼 * @param requestedQuality 密碼的型別和限制 * DevicePolicyManager.PASSWORD_QUALITY_SOMETHING://圖案 * DevicePolicyManager.PASSWORD_QUALITY_NUMERIC_COMPLEX://PIN碼 * DevicePolicyManager.PASSWORD_QUALITY_COMPLEX://密碼 * @param userHandle 當前的UserID. * */ public void saveLockPassword(String password, String savedPassword, int requestedQuality, int userHandle); }
例項:
/** * @param password 原密碼,沒有設定密碼時為null * @param savedPassword 新密碼 * */ private void saveLockPassword(String password, String mUserPassword) { try { LockPatternUtils lockPatternUtils = new LockPatternUtils(this); int userId = ActivityManager.getService().getCurrentUser().id; lockPatternUtils.saveLockPassword(password, mUserPassword, DevicePolicyManager.PASSWORD_QUALITY_COMPLEX, userId); } catch (Exception e) { e.printStackTrace(); } }
關於如何獲取原密碼,我鬧了一個笑話,在發現原始碼裡面的原密碼是在幾個畫面之間用Bundle存起來互相傳遞的,可是我沒有找到系統是以哪一個方法去獲取到系統密碼的,以正常的邏輯來看,獲取原密碼的方法也是應該屬於LockPatternUtils這個類,但是我就是找不到,又在畫面之間傳遞的Bundle繞暈了,臉懟螢幕看原始碼卡了我一天。
後面各種查詢,才發現Android6.0之後因為安全問題,已經刪除了查詢到密碼的方法…那系統是怎麼拿到原密碼的呢?
答案其實很簡單,進入密碼設定畫面之前系統會進行密碼驗證,LockPatternChecker類中提供了驗證密碼的方法checkPassword,當驗證成功時,輸入框裡的內容就是原密碼,再把原密碼傳遞到下一個畫面。當時我進入了系統一定有提供獲取密碼的方法這個怪圈,現在想想真的是好笑,哈哈。
驗證密碼的方法:LockPatternChecker.checkPassword:
public static AsyncTask<?, ?, ?> checkPassword(final LockPatternUtils utils, final String password, final int userId, final LockPatternChecker.OnCheckCallback callback) { AsyncTask<Void, Void, Boolean> task = new AsyncTask<Void, Void, Boolean>() { private int mThrottleTimeout; protected Boolean doInBackground(Void... args) { try { LockPatternUtils var10000 = utils; String var10001 = password; int var10002 = userId; LockPatternChecker.OnCheckCallback var10003 = callback; Objects.requireNonNull(var10003); return var10000.checkPassword(var10001, var10002, var10003::onEarlyMatched); } catch (RequestThrottledException var3) { this.mThrottleTimeout = var3.getTimeoutMs(); return false; } } protected void onPostExecute(Boolean result) { callback.onChecked(result, this.mThrottleTimeout); } protected void onCancelled() { callback.onCancelled(); } }; task.execute(new Void[0]); return task; }
使用:
private void checkPassword(String password,LockPatternChecker.OnCheckCallback checkCallback ) { LockPatternChecker.checkPassword(lockPatternUtils, password, userId, checkCallback); }
以上就是直播系統程式碼,Android獲取、設定鎖屏密碼實現的相關程式碼, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2848852/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Win10系統如何設定鎖屏密碼 win10系統取消鎖屏密碼的方法Win10密碼
- 怎麼設定電腦鎖屏密碼 設定電腦鎖屏密碼的操作方法密碼
- 電腦怎麼設定密碼鎖屏 電腦設定密碼鎖屏的詳細教程密碼
- window10怎樣設定鎖屏密碼_win10電腦鎖屏密碼怎麼設定密碼Win10
- Android手機:破解鎖屏密碼Android密碼
- app直播原始碼,Android 設定系統亮度APP原始碼Android
- 直播系統搭建,docker Elasticsearch 7.16.1 設定密碼DockerElasticsearch密碼
- 電腦鎖屏密碼怎麼設定 win10電腦休眠密碼設定方法設定密碼Win10
- win10 1909系統鎖屏密碼怎麼取消_win10 1909系統取消鎖屏密碼的方法Win10密碼
- Win10鎖屏密碼怎麼取消?Win10系統取消鎖屏密碼的方法教程Win10密碼
- WindTerm鎖屏密碼密碼
- windows10怎麼設定開機密碼 windows10如何取消鎖屏密碼Windows密碼
- win10屏保密碼設定方法_window10如何設屏保鎖屏密碼Win10密碼
- 如何設定 Linux 系統的密碼策略Linux密碼
- 駭客找到iOS 11鎖屏密碼漏洞:破解iOS鎖屏密碼跟玩一樣iOS密碼
- 直播小程式原始碼,Android 傾斜文字 效果設定原始碼Android
- win10系統修改鎖屏密碼的方法【圖文教程】Win10密碼
- win10系統怎麼設定電腦指紋密碼解鎖Win10密碼
- 影片直播系統原始碼,Android 讀取聯絡人列表原始碼Android
- 影片直播系統原始碼,例項原始碼系列-設定系統時間原始碼
- 瞭解直播帶貨系統原始碼,透過html5程式碼獲取位置資訊原始碼HTML
- Centos7密碼登入失敗鎖定設定CentOS密碼
- 手機直播原始碼,Android Shape設定背景原始碼Android
- windows10系統如何一鍵獲取鎖屏聚焦桌布Windows
- 直播APP原始碼,直播系統推流SDK(Android)APP原始碼Android
- 直播系統程式碼,輸入時實現密碼顯示與隱藏密碼
- 電腦開機密碼怎麼設定?XP系統和win7系統電腦開機密碼的設定方法密碼Win7
- Win7旗艦版系統如何設定WLAN密碼?Win7旗艦版系統WLAN密碼的設定教程Win7密碼
- 線上直播系統原始碼,android 中一段文字設定不同顏色原始碼Android
- Win10如何設定開機密碼 win10系統設定開機密碼的步驟Win10密碼
- Android設定加密鎖屏不可訪問MTPAndroid加密
- win10怎麼獲取wifi 密碼_win10系統wifi密碼怎麼檢視Win10WiFi密碼
- 直播系統程式碼,android中幾種常用的彈框Android
- win10電腦開機密碼怎麼設定_win10系統如何設定開機密碼Win10密碼
- 直播系統app原始碼,shiro簡單的密碼加鹽與密碼驗證APP原始碼密碼
- Win10系統怎麼設定待機密碼Win10密碼
- Centos系統設定GRUB開機選單的密碼CentOS密碼
- Win10系統設定開機密碼操作流程Win10密碼