Android开源:指纹识别 API 兼容库

bmid6930 3年前
   <h2>FingerprintIdentify</h2>    <p>Android指纹识别API兼容库,目前整合了安卓原生API以及三星和魅族的指纹SDK,支持继续拓展。</p>    <p>API调用优先级:安卓原生 > 三星SDK > 魅族SDK</p>    <h2>Usage</h2>    <p>1. 添加引用</p>    <pre>  <code class="language-java">compile 'com.wei.android.lib:fingerprintidentify:1.1.1'</code></pre>    <p>2. 添加指纹识别权限</p>    <pre>  <code class="language-java"><uses-permission android:name="android.permission.USE_FINGERPRINT"/>  <uses-permission android:name="com.fingerprints.service.ACCESS_FINGERPRINT_MANAGER"/>  <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY"/></code></pre>    <p>3. FingerprintIdentify方法解释</p>    <pre>  <code class="language-java">mFingerprintIdentify = new FingerprintIdentify(this);                       // 构造对象  mFingerprintIdentify = new FingerprintIdentify(this, exceptionListener);    // 构造对象,并监听错误回调  mFingerprintIdentify.isFingerprintEnable();                                 // 指纹硬件可用并已经录入指纹  mFingerprintIdentify.isHardwareEnable();                                    // 指纹硬件是否可用  mFingerprintIdentify.isRegisteredFingerprint();                             // 是否已经录入指纹  mFingerprintIdentify.startIdentify(maxTimes, listener);                     // 开始验证指纹识别  mFingerprintIdentify.cancelIdentify();                                      // 关闭指纹识别  mFingerprintIdentify.resumeIdentify();                                      // 恢复指纹识别并保证错误次数不变</code></pre>    <p>4. startIdentify方法解析</p>    <pre>  <code class="language-java">mFingerprintIdentify.startIdentify(3, new BaseFingerprint.FingerprintIdentifyListener() {      @Override      public void onSucceed() {          // 验证成功,自动结束指纹识别      }        @Override      public void onNotMatch(int availableTimes) {          // 指纹不匹配,并返回可用剩余次数并自动继续验证      }        @Override      public void onFailed() {          // 错误次数达到上限或者API报错停止了验证,自动结束指纹识别      }  });</code></pre>    <p>5. 混淆设置</p>    <pre>  <code class="language-java"># MeiZuFingerprint  -keep class com.fingerprints.service.** { *; }    # SmsungFingerprint  -keep class com.samsung.android.sdk.** { *; }</code></pre>    <p>6. 其他说明</p>    <p>compile 'com.android.support:appcompat-v7:23.4.0'</p>    <p>这里如果使用25.X版本的兼容库,可能会导致部分即使是6.0系统的机型也不能正常使用指纹识别,具体请客参考:</p>    <p><a href="/misc/goto?guid=4959747365406925241" rel="nofollow,noindex">https://code.google.com/p/android/issues/detail?id=231939</a></p>    <p>7. 更新历史</p>    <p>v1.1.1 2017.03.20 AppCompat支持库从25.2.0降级到23.4.0,因为第6点问题还没修复</p>    <p>v1.1.0 2017.03.16 调整包名,修正魅族指纹SDK的API调用问题</p>    <p>v1.0.2 2017.02.17 新增异常回调接口</p>    <p>v1.0.1 2017.02.15 修正三星指纹API调用(开始识别和关闭指纹都必须在主线程调用)</p>    <p>v1.0.0 2017.02.10 发布第一版本</p>    <p> </p>    <p>项目主页:<a href="http://www.open-open.com/lib/view/home/1492134781879">http://www.open-open.com/lib/view/home/1492134781879</a></p>    <p> </p>