Starting
创建手势密码可以查看 CreateGestureActivity.java 文件.
登陆验证手势密码可以看 GestureLoginActivity.java 文件.
Features
使用了 JakeWharton/butterknife butterknife
使用了 ACache 来存储手势密码
/** * 保存手势密码 */ private voID saveChosenPattern(List<LockPatternVIEw.Cell> cells) { byte[] bytes = LockPatternUtil.patternToHash(cells); aCache.put(Constant.GESTURE_PASSWORD,bytes);}
Warning: 使用 ACache 类保存密码并不是无限期的. 具体期限可以查看 ACache 类.
使用了 SHA 算法保存手势密码
/** * Generate an SHA-1 hash for the pattern. * Not the most secure,but it is at * least a second level of protection. First level is that the file is in a * location only readable by the system process.* * @param pattern * @return the hash of the pattern in a byte array. */public static byte[] patternToHash(List<LockPatternVIEw.Cell> pattern) { if (pattern == null) { return null; } else { int size = pattern.size(); byte[] res = new byte[size]; for (int i = 0; i < size; i++) { LockPatternVIEw.Cell cell = pattern.get(i); res[i] = (byte) cell.getIndex(); } MessageDigest md = null; try { md = MessageDigest.getInstance("SHA-1"); return md.digest(res); } catch (NoSuchAlgorithmException e) { e.printstacktrace(); return res; } } }
可以开启震动模式,当选中一个圈的时候,手机会震动
/** * Set whether the vIEw will use tactile Feedback. *If true,there will be * tactile Feedback as the user enters the pattern. * @param tactileFeedbackEnabled Whether tactile Feedback is enabled */ public voID setTactileFeedbackEnabled(boolean tactileFeedbackEnabled) { mEnableHapticFeedback = tactileFeedbackEnabled;}
可以开启绘制路径隐藏模式
/** * Set whether the vIEw is in stealth mode. If true,there will be no * visible Feedback as the user enters the pattern. * @param inStealthMode Whether in stealth mode. */public voID setInStealthMode(boolean inStealthMode) { mInStealthMode = inStealthMode;}
Example
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结以上是内存溢出为你收集整理的Android仿支付宝手势密码解锁功能全部内容,希望文章能够帮你解决Android仿支付宝手势密码解锁功能所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)