本篇文章将着重介绍虹软人证核验 2.0 Android SDK的API。
一、相关类介绍
IdCardVerifyManager
人证比对引擎类 单例类,其中定义了人证比对相关的函数,包含SDK的授权激活、引擎初始化以及人证处理相关方法
IdCardVerifyListener
特征提取结果回调接口 用于人脸特征提取成功后回调提取结果及人脸相关信息
DetectFaceResult
检测结果类 用于存储检测到的人脸信息
CompareResult
比对结果类 用于存储人证比对结果
IdCardVerifyError
错误信息类 其中定义了引擎调用的错误码
二、功能方法说明
1. 激活引擎
public int active(Context context, String appId, String sdkKey)
参数介绍:
context
- 应用上下文
appId
- 官网申请的APP_ID
sdkKey
- 官网申请的SDK_KEY
返回值:
错误码,IdCardVerifyError.OK
为成功,其他情况详见IdCardVerifyError
中的定义。
详细说明:
激活方法在首次调用时会请求服务器,在激活成功后会在本地保存数据 ,下次调用激活将校验本地文件
所需权限:
android.permission.READ_PHONE_STATE
android.permission.INTERNET
2. 初始化引擎
public int init(Context context, IdCardVerifyListener listener)
参数介绍:
context
- 应用上下文
listener
- Fr结果回调,详见IdCardVerifyListener
中定义
返回值:
错误码,IdCardVerifyError.OK
为成功,其他情况详见IdCardVerifyError
中的定义。
详细说明:
初始化将校验本地激活文件
所需权限:
android.permission.READ_PHONE_STATE
android.permission.INTERNET
3. 身份证数据检测
public DetectFaceResult inputIdCardData(byte[] data, int width, int height)
参数介绍:
data
- 身份证图像数据,只支持nv21格式
width
- 身份证图像宽度
height
- 身份证图像高度
返回值:
人脸检测结果,如果返回的DetectFaceResult.getErrCode()
为IdCardVerifyError.OK
说明检测成功,DetectFaceResult.getFaceRect()
为检测到的人脸框
详细说明:
输入身份证图像进行人脸检测,内部做了异步处理,需要在主线程调用该接口
4. 视频或图片数据检测
public DetectFaceResult onPreviewData(byte[] data, int width, int height, boolean isVideo)
参数介绍:
data
- 预览图像数据,只支持nv21格式
width
- 预览图像宽度
height
- 预览图像高度
isVideo
- 输入的数据格式,true为视频模式,false为图片格式
返回值:
人脸检测结果,如果返回的DetectFaceResult.getErrCode()
为IdCardVerifyError.OK
说明检测成功,DetectFaceResult.getFaceRect()
为检测到的人脸框
详细说明:
输入预览图像进行人脸检测,内部做了异步处理,需要在主线程调用该接口
5. 人证特征数据比对
public CompareResult compareFeature(double threshold)
参数介绍:
threshold
- 比对阈值
返回值:
特征对比结果,CompareResult.getErrCode()
为IdCardVerifyError.OK
,说明比对成功
详细说明:
IdCardVerifyListener.onPreviewResult()
与IdCardVerifyListener.onIdCardResult()
回调中DetectFaceResult.getErrCode()
都为IdCardVerifyError.OK
即可调用该接口进行人证特征数据比对
6. 版本信息获取
public String getVersion()
返回值:
SDK版本号
详细说明:
获取当前SDK的版本信息
7. 销毁引擎
public void unInit()
详细说明:
销毁引擎,释放内存
三、SDK参考文档:
Android平台开发指南:
https://ai.arcsoft.com.cn/manual/idcard_android_guide_v2.html
API接口说明
https://ai.arcsoft.com.cn/statics/mannual/idcardveri/2.0/android/index.html