更新记录
1.0.0(2026-11-05) 下载此版本
1.0.0
- 首个版本,功能可用
平台兼容性
pk-biometric 生物认证套件
指纹 / 面容认证,基于系统级 Soter 协议封装(uni.startSoterAuthentication),零原生插件。认证结果归一化为统一 kind,方便业务分支处理。
为什么做它
Soter API 返回字段零散(isSupport / isEnrolled / errMsg / errCode 三套体系),错误分类(用户取消 / 未录入 / 锁定)每个项目都要重写。pk-biometric 把支持性探测、录入查询、认证发起、错误归类做成四个归一化方法,不支持的端如实返回 unsupported,不造假。
快速上手
import bio from '@/uni_modules/pk-biometric/js_sdk/index.js';
const matrix = await bio.supportMatrix();
// { modes: [...], usable: ['fingerprint'], anyUsable: true }
if (matrix.anyUsable) {
const r = await bio.authenticate({
requestAuthModes: ['fingerprint'],
authContent: '验证身份后进入'
});
if (r.kind === 'authenticated') { /* 通过 */ }
else if (r.kind === 'user-cancel') { /* 用户取消,可重试 */ }
else if (r.kind === 'not-enrolled') { /* 引导去系统设置录入 */ }
}
全部方法
| 方法 | 说明 | 返回 |
|---|---|---|
isAvailable() |
当前环境是否有 Soter API | boolean |
isSupport(mode) |
单模式支持性 | { mode, supported, reason } |
isEnrolled(mode) |
该模式是否已录入 | { mode, enrolled, reason } |
supportMatrix() |
指纹+面容一览 | { modes[], usable[], anyUsable } |
authenticate(opts) |
发起认证。opts: { requestAuthModes, authContent, challenge, _mock } |
{ ok, kind, message, resultJSON? } |
describe() |
能力一句话(如「指纹已录入;面容不支持」) | string |
认证结果 kind 对照
| kind | 含义 | 建议处理 |
|---|---|---|
authenticated |
认证通过(带 Soter 签名) | 继续业务 |
user-cancel |
用户取消(可重试) | 允许再次发起 |
not-enrolled |
生物特征未录入 | 引导系统设置 |
lockout |
失败次数过多锁定 | 稍后重试/用锁屏密码 |
unsupported |
设备不支持 | 降级密码方案 |
rejected / unknown |
未通过 / 其他 | 提示重试 |
平台支持
- App(Android):完整支持(指纹为主,部分机型面容)
- App(iOS):需勾选 FaceID/TouchID 模块后可用
- 小程序:微信支持指纹(Soter 源生协议)
- H5:无 Soter API,
isAvailable()返回 false,业务应降级
示例工程
example/ 为完整可跑工程。在线文档:https://plugins.cnajiu.cn/public/pk-biometric.html

收藏人数:
下载插件并导入HBuilderX
下载插件ZIP
赞赏(0)
下载 3
赞赏 0
下载 12746309
赞赏 1959
赞赏
京公网安备:11010802035340号