用户旅程
用户旅程是由 SDK 结合所配置的流程编排的多步骤采集会话。例如,包含 活体检测 + 欺诈风险分类 + 欺诈风险分类 + 文档采集与重用 + 电子签名的流程将在单个会话中依次执行自拍、文件采集和签名。
使用场景
可用的旅程取决于为您的集成配置的流程。请参阅使用场景,了解使用场景 → 流程 → 能力的完整映射关系。
工作原理
SDK 的处理流程如下:
- 读取初始化时提供的流程配置。
- 编排流程所需的采集序列(自拍、文件、签名)。
- 当旅程完成时,通过
onSuccess返回processId。对于自拍步骤,图像数据(base64/encrypted)也通过onSuccessSelfie返回。文件和签名捕获由SDK在内部处理——不会向客户端暴露每步的工件。
整个编排过程完全由 SDK 处理——您无需在应用中自行实现步骤序列。
启动用户旅程
步骤 1 — 实现 AcessoBioListener
AcessoBioListener 负责处理 SDK 生命周期回调。请实现以下四个必需方法:
| 方法 | 调用时机 |
|---|---|
onErrorAcessoBio(errorBio) | SDK 操作过程中发生错误 |
onUserClosedCameraManually() | 用户手动关闭了摄像头 |
onSystemClosedCameraTimeoutSession() | 已达到会话时间限制 — 请参阅会话限制 |
onSystemChangedTypeCameraTimeoutFaceInference() | 已达到人脸推断时间限制 — 切换为手动拍摄 — 请参阅会话限制 |
- Kotlin
- Java
val callback = object : AcessoBioListener {
override fun onErrorAcessoBio(errorBio: ErrorBio?) { }
override fun onUserClosedCameraManually() { }
override fun onSystemClosedCameraTimeoutSession() { }
override fun onSystemChangedTypeCameraTimeoutFaceInference() { }
}
AcessoBioListener callback = new AcessoBioListener() {
@Override
public void onErrorAcessoBio(ErrorBio errorBio) { }
@Override
public void onUserClosedCameraManually() { }
@Override
public void onSystemClosedCameraTimeoutSession() { }
@Override
public void onSystemChangedTypeCameraTimeoutFaceInference() { }
};
步骤 2 — 实现 iAcessoBioSelfie
iAcessoBioSelfie 处理旅程采集结果的回调:
| 方法 | 描述 |
|---|---|
onSuccessSelfie(result) | 图像采集成功——返回 ResultCamera,用于后续 REST API 调用 |
onSuccess(result) | 旅程成功完成——返回含 processId 的 SuccessResult,用于查询验证结果 |
onErrorSelfie(errorBio) | 采集失败——返回含错误详情的 ErrorBio |
- Kotlin
- Java
val cameraListener: iAcessoBioSelfie = object : iAcessoBioSelfie {
override fun onSuccessSelfie(result: ResultCamera?) { }
override fun onSuccess(result: SuccessResult) { }
override fun onErrorSelfie(errorBio: ErrorBio?) { }
}
iAcessoBioSelfie cameraListener = new iAcessoBioSelfie() {
@Override
public void onSuccessSelfie(ResultCamera result) { }
@Override
public void onSuccess(SuccessResult result) { }
@Override
public void onErrorSelfie(ErrorBio errorBio) { }
};
步骤 3 — 调用 prepareCamera
完成 unicoCheckCamera 初始化并实现两个监听器后,调用 prepareCamera,传入 SDK 配置、CameraListener 以及您的 webAppToken:
webAppToken
webAppToken 是在后端调用 POST /client/v1/process 创建流程时,响应中返回的 process.webAppToken 字段。请参阅创建流程。
onCameraReady— 摄像头已就绪;调用open,传入cameraListener和您的webAppToken。onCameraFailed— 摄像头准备失败;处理错误信息。
- Kotlin
- Java
unicoCheckCamera.prepareCamera(unicoConfig, object : CameraListener {
override fun onCameraReady(cameraOpener: UnicoCheckCameraOpener.Camera?) {
cameraOpener?.open(cameraListener, "your_web_app_token")
}
override fun onCameraFailed(message: String?) {
Log.e(TAG, message)
}
})
unicoCheckCamera.prepareCamera(unicoConfig, new CameraListener() {
@Override
public void onCameraReady(UnicoCheckCameraOpener.Camera cameraOpener) {
cameraOpener.open(cameraListener, "your_web_app_token");
}
@Override
public void onCameraFailed(String message) {
Log.e(TAG, message);
}
});
有关完整的结果处理说明,请参阅接收结果。