Android开源:指纹识别 API 兼容库
bmid6930
8年前
<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>