芝麻信用认证的方式有两种:
本篇文章使用的第二种方案,jar下载地址
芝麻认证逻辑大致分为三步:
1.调用芝麻验证WebAPI,获取bizNO(业务串号) 以及 merchantID(商户号);
2.使用bizNO 和merchantID 完成SDK初始化,进入认证页面;
3.用户通过认证流程后,返回商户界面,并通过回调告知结果。
public void zmCertification(String bizNo,String merchantID) {
ZMCertification zmCertification = ZMCertification.getInstance();
zmCertification.setZMCertificationListener(new ZMCertificationListener() {
@Override
public void onFinish(boolean isCanceled, boolean isPassed, int errorCode) {
zmCertification.setZMCertificationListener(null);
if (isCanceled) {
Toast.makeText(getContext(), "cancel : 芝麻验证失败,原因是:" + errorCode, Toast.LENGTH_SHORT).show();
}else {
if (isPassed) {
Toast.makeText(getContext(), "complete : 芝麻验证成功,原因是:" + errorCode, Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(getContext(), "complete : 芝麻验证失败,原因是:" + errorCode, Toast.LENGTH_SHORT).show();
}
}
}
});
zmCertification.startCertification(getActivity(), bizNo, merchantID, null);
}
错误code
名称 | 说明 | 数值 |
---|---|---|
none | 无 0 | |
verification_failed | 用户人脸与数据库中的人脸比对分数较低 | 1 |
device_not_support | 手机在不支持列表里 | 2 |
no_permission | 缺少手机权限 | 3 |
no_network_permission | 没有联网权限 | 4 |
no_camera_permission | 没有打开相机的权限 | 5 |
no_sensor_permission | 无法读取运动数据的权限 | 6 |
face_init_fail | 人脸采集算法初始化失败 | 7 |
network_error | 发生网络错误 | 8 |
invalid_biz_no | 传入的bizNO 有误 | 9 |
invalid_bundle_id | 此APP的bundle_id在系统的黑名单库里 | 10 |
data_source_error | 数据源错误 | 11 |
internal_error | 服务发生内部错误 | 12 |
unmatched_merchant_id | bizNO和merchantID不匹配 | 13 |
version_too_old | SDK版本过旧 | 14 |
userinfo_error | 身份证号和姓名的格式不正确 | 15 |
bizno_limit_exceed | 身份证号和姓名在一天内使用次数过多 | 16 |
wrong_system_time | 用户当前的设备时间与授权时间不符 | 17 |
no_write_external_storage_permission | 没有写存储空间的权限 | 18 |
upload_image_error | 商户上传的底库图像出现问题 | 20 |
image_error_unsupported_format | 用户在公安部门的证件照片不够清晰 | 22 |
更多详细配置可查看
4F2BA8A7-DF1E-4566-AC65-C06998F7A833.png
到此芝麻验证基本就结束了!
网友评论