接入文档
APP接入
SDK集成
Android
预处理及活体检测接口
预处理及活体检测接口
# 预处理及活体检测接口

Android进入活体检测前需要进行预处理,以验明身份并初始化SDK。预处理完成后开始活体检测,完成活体后返回data用于后续verify验证。

  • 获取MegLiveManager单例

    Android SDK 代码调用的入口为MegLiveManager这个类,该类是管理活体认证的类,此类不可以初始化,只能通过getInstance获得其单例。只有在获取单例成功后才能进入后续的预处理及活体检测流程。

    MegLiveManager.getInstance

函数名

getInstance

MegLiveManager getInstance()

名称

获取MegLiveManager的实例

类型说明

函数

说明

获取MegLiveManager的单例。

返回值


MegLiveManager

一个实例

MegLiveManager.getVersion

函数名

getVersion

String getVersion()

名称

获取SDK的版本号

类型说明

函数

说明

返回值


String

一个字符串,表示当前SDK的版本号。如:MegLiveStill 3.0.0

MegLiveManager.getBuildInfo

函数名

getBuildInfo

String getBuildInfo()

名称

获取SDK的构建信息

类型说明

函数

说明

返回值


String

一个字符串。

  • 预处理

获取MegLiveManager单例成功后,可进行SDK的预处理,初始化SDK的同时进行鉴权验证。

MegLiveManager.preDetect

函数名

preDetect

void preDetect(Context context, String token,String language, String host, String modelPath, PreCallback callback)

名称

活体检测预处理接口,结果会以callback返回。失败则无法进行以后所有工作。

类型说明

函数

说明

监听者会在活体验证结束后被调用,如果没有设置,则不会调用。

变量名

说明

类型

context

Android上下文

Context

token

业务流水号,每次验证前,通过服务端API获取的业务流水号(bizToken)

String

language

语种 参照ISO 639标准

使用系统默认传null

String

host

网络请求host。

host取值见附录E 【host取值列表】,请根据具体情况选择host取值。

String

modelPath

模型本地存放路径

String

callback

PreCallback的类对象,接收预处理结果,详见回调函数PreCallback说明

PreCallback

预处理的结果将由PreCallback类接受,该类是一个活体检测前预处理的回调接口,开启活体验证之前需要优先调用此接口。
MegLiveManager.setTextContent

函数名

setTextContent

void setTextContent(String key,String content);

名称

设置TextContent

类型说明

函数

说明

设置新增UI定制

Key目前仅支持: livenessHomeUpperInfoTextContent

Value: 要设置的内容

返回值

getSdkLog

函数名

getSdkLog

String getSdkLog()

名称

获取SDKLog 信息

类型说明

函数

说明

返回值


String

一个加密字符串,用于协助分析定位SDK使用过程中的问题

setVerticalDetectionType

函数名

setVerticalDetectionType

void setVerticalDetectionType(@Vertical int verticalDetection)

名称

垂直检测设置

类型说明

函数

说明

MegLiveManager. DETECT_VERITICAL_FRONT 前两秒检测

MegLiveManager. DETECT_VERITICAL_KEEP 始终检测

MegLiveManager. DETECT_VERITICAL_DISABLE 不检测

变量名

说明

类型

verticalDetection

垂直检测类型

int

PreCallback. onPreStart
PreCallback是一个活体检测前预处理的回调接口,开启活体验证之前需要优先调用此接口。

函数名

onPreStart

void  onPreStart();

名称

开启预处理

类型说明

函数

说明

此处无实际意义,代表预处理开启,此处可用于展示progress bar

PreCallback. onPreFinish

函数名

onPreFinish

 void onPreFinish(String token,int errorCode,String errorMessage)

名称

完成预处理之后的回调

类型说明

函数

说明

只有当完成预处理且errorCode==1000的时候才可以调用startDetect开启活体检测

变量名

说明

类型

token

业务流水号,用户调用预处理传入的token

String

errorCode

预处理结果码,具体错误码参考文档ErrorCode 说明

int

errorMessage

预处理结果信息,具体错误信息参考文档ErrorCode说明

String

至此,预处理完成。

  • 进行活体检测

在预处理接口onPreFinish 成功回调且errorCode==1000后,开始活体认证,验证结果以DetectCallback回调函数返回

MegLiveManager. startDetect

函数名

startDetect

void startDetect(DetectCallback callback);

名称

开始活体认证

类型说明

函数

说明

在预处理接口onPreFinish 成功回调且errorCode==1000的时候才能开启

变量名

说明

类型

callback

DetectCallback的类对象,接受活体结果的接口,详见回调函数DetectCallback说明

DetectCallback

接口DetectCallback
活体检测的结果由DetectCallback的类对象接受,该接口是一个活体检测完成返回活体认证结果的回调接口。

DetectCallback. onDetectFinish

函数名

onPreFinish

 void onDetectFinish(String token,int errorCode,String errorMessage,String data)

名称

完成活体检测之后的回调结果

类型说明

函数

说明


变量名

说明

类型

token

业务流水号,用户调用预处理传入的token

String

errorCode

预处理结果码,具体错误码参考文档ErrorCode 说明

int

errorMessage

预处理结果信息,具体错误信息参考文档ErrorCode说明

String

data

客户端完成验证后的加密数据。注:需用该data调用服务端接口进行数据验证

String

完成活体检测之后的回调结果通过该函数返回,data为后续用于获取比对结果的加密数据。

若用户getBizeToken接口传入参数get_liveness_video为1,即选择返回活体阶段的视频/图片,开始活体检测的函数选择startDetectForLivenessFile。

startDetectForLivenessFile

函数名

startDetectForLivenessFile

void startDetectForLivenessFile(DetectCallbackWithFile callback)

名称

开始活体认证

类型说明

函数

说明

在预处理接口onPreFinish 成功回调且errorCode==1000的时候才能开启

变量名

说明

类型

callback

DetectCallbackWithFile的类对象,接受活体结果的接口,详见回调函数DetectCallbackWithFile说明

DetectCallbackWithFile

活体检测的结果由DetectCallbackWithFile的类对象接受,该接口是一个活体检测完成返回活体认证结果的回调接口。

DetectCallbackWithFile. onDetectFinish

函数名

onPreFinish

 void onDetectFinish(String token, int errorCode, String errorMessage, String data, String livenessFilePath);

名称

完成活体检测之后的回调结果

类型说明

函数

说明


变量名

说明

类型

token

业务流水号,用户调用预处理传入的token

String

errorCode

预处理结果码,具体错误码参考文档ErrorCode 说明

int

errorMessage

预处理结果信息,具体错误信息参考文档ErrorCode说明

String

data

客户端完成验证后的加密数据。注:需用该data调用服务端接口进行数据验证

String

livenessFilePath

若getBizeToken接口传入参数get_liveness_video为1,则返回活体加密文件路径,,verify成功后拿到解密key后调用getLivenessFiles接口获取解密后的文件

String

完成活体检测之后的回调结果通过该函数返回,data为后续用于获取比对结果的加密数据。同时返回活体加密文件路径livenessFilePath,再加上verify成功后拿到解密key,可调用getLivenessFiles接口获取解密后的文件。

getLivenessFiles

函数名

startDetectForLivenessFile

LivenessFileResult getLivenessFiles(String filePath, String decryptionKey)

名称

获取解密活体文件

类型说明

函数

说明


返回值

LivenessFileResult

变量名

说明

类型

filePath

端上活体成功后sdk返回的活体加密文件路径

String

decryptionKey

调用verify后拿到的解密key

String

类LivenessFileResult

参数类型

参数名

说明

int

resultCode

结果码:

 1000表示获取成功

 2000表示传入的video_key不正确

 2100表示传入的path不正确

 3000表示参考数据调用出错

String

livenessType

活体类型

(动作:meglive 静默:still 炫彩:flash)

LivenessFile[]

livenessFiles

活体文件对象

类LivenessFile

参数类型 参数名 说明
String path 文件路径
String fileType 文件类型
String actionType 动作类型(只有动作活体有值,其他为空。 眨眼:blink 张嘴:open_mouth 左右摇头:shake 上下点头:nod)
该文档未解决您的疑问?查看常见问题