fingerprint.html 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
  6. <meta name="HandheldFriendly" content="true"/>
  7. <meta name="MobileOptimized" content="320"/>
  8. <title>Hello H5+</title>
  9. <script type="text/javascript" src="../js/common.js"></script>
  10. <script type="text/javascript">
  11. // H5 plus事件处理
  12. function plusReady(){
  13. var result = document.getElementById('result');
  14. // 检查是否支持指纹识别
  15. if(plus.fingerprint) {
  16. if(!plus.fingerprint.isSupport()) {
  17. result.innerText = '此设备不支持指纹识别';
  18. return;
  19. }
  20. if(!plus.fingerprint.isKeyguardSecure()) {
  21. result.innerText = '此设备未设置密码锁屏,无法使用指纹识别';
  22. return;
  23. }
  24. if(!plus.fingerprint.isEnrolledFingerprints()) {
  25. result.innerText = '此设备未录入指纹,请到设置中开启';
  26. return;
  27. }
  28. result.innerText = '此设备支持指纹识别';
  29. }else {
  30. result.innerText = '当前环境不支持指纹识别API,请更新到最新版本';
  31. }
  32. }
  33. document.addEventListener('plusready', plusReady, false);
  34. // 指纹识别认证
  35. function fingerpring() {
  36. var waiting = null;
  37. plus.fingerprint.authenticate(function(){
  38. plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
  39. plus.nativeUI.alert('指纹识别成功');
  40. }, function(e){
  41. plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
  42. switch(e.code) {
  43. case e.AUTHENTICATE_MISMATCH:
  44. plus.nativeUI.toast('指纹匹配失败,请重新输入');
  45. break;
  46. case e.AUTHENTICATE_OVERLIMIT:
  47. plus.nativeUI.closeWaiting();//兼容Android平台关闭等待框
  48. plus.nativeUI.alert('指纹识别失败次数超出限制,请使用其它方式进行认证');
  49. break;
  50. default:
  51. console.log('指纹识别失败: '+JSON.stringify(e));
  52. break;
  53. }
  54. });
  55. // Android平台弹出等待提示框
  56. if('Android'==plus.os.name) {
  57. plus.nativeUI.showWaiting('指纹识别中...').onclose = function(){
  58. plus.fingerprint.cancel();
  59. }
  60. }
  61. }
  62. // // 关闭窗口
  63. // var _back=window.back;
  64. // function preateBack(){
  65. // plus.fingerprint.cancel();
  66. // _back();
  67. // }
  68. // window.back=preateBack;
  69. </script>
  70. <link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>
  71. </head>
  72. <body >
  73. <br/>
  74. <h3>指纹识别认证情况</h3>
  75. <p><font id="result" color="red">...</font></p>
  76. <br/>
  77. <div class="button" onclick="fingerpring()">指纹识别</div>
  78. </body>
  79. </html>