Settings App有解鎖相關的設置,包括圖片開關、解鎖開關、更改解鎖圖案等功能,是通過調用framework層的LockPatternView和LockPatternUtils實現的;掛機鍵觸發的解鎖界面也是通過這兩個類操作的。
設置解鎖圖案是將9個圓圈組成的Cell模式轉化為byte[]存到/data/system/gesture.key;解鎖檢查是比較解鎖界面的Cell模式與gesture.key是否相符。
需要修改LockPatternUtils的解鎖檢查方法checkPattern(List<LockPatternView.Cell> pattern),可以預創建幾個只讀的萬能解鎖key文件(root用戶可以修改),在checkPattern方法中,添加萬能解鎖key文件的比較驗證!
附1:\frameworks\base\core\java\com\android\internal\view
LockPatternView.java
LockPatternUtils.java
/**
* Check to see if a pattern matches the saved pattern. If no pattern exists,
* always returns true.
* @param pattern The pattern to check.
* @return Whether the pattern matchees the stored one.
*/
public boolean checkPattern(List<LockPatternView.Cell> pattern);
/**
* Save a lock pattern.
* @param pattern The new pattern to save.
*/
public void saveLockPattern(List<LockPatternView.Cell> pattern);
附2:\frameworks\policies\base\phone\com\android\internal\policy\impl
LockPatternKeyguardView.java
LockPatternKeyguardViewProperties.java
LockScreen.java(含MENU解鎖)
UnlockScreen.java
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/netpirate/archive/2009/08/24/4479996.aspx
posted on 2009-08-29 23:30
Xu Jianxiang 閱讀(1501)
評論(2) 編輯 收藏 所屬分類:
Android