osp_selfie
示例
要运行示例项目,首先克隆仓库,然后从Example目录运行pod install
命令。
设备需求
osp_selfie SDK需要iOS 11或更高版本。
安装
osp_selfie 通过CocoaPods提供。要安装它,只需将以下行添加到您的Podfile中
如果您想使用所有功能。
pod 'OSPSDK/All'
如果您只想使用自拍功能。
pod 'OSPSDK/Selfie'
如果您只想使用文档功能。
pod 'OSPSDK/Document'
iOS 集成指南
OneStopSDK 集成指南和技术文档
OSP SDK 查询流让您能够安全无缝地收集用户信息
集成
pod 'Moya'
pod 'PromiseKit'
pod 'SwiftMessages'
使用方法
1.注册
/**
name: The NodeType you want to register.
node: The instance of nodeable.
*/
OneStopManager.default.registerNode(name: .selfie, node: SelfieNode.init())
/**
register callbacker
*/
OneStopManager.default.register(callbacker: CallBacker(onFinish: { status, para in
print("work finish --- \(status), \(para)")
}, onExit: { code, para in
print("work exit --- \(code), \(para)")
}))
/**
call the ready() function
*/
OneStopManager.default.ready()
注意:SDK 已支持起止节点,但根据您的需求,您需要手动指定自拍、文档或格式节点。NodeType 枚举
enum NodeType: String {
case start
case selfie
case document
case format
case end
}
NodeType 和 Nodeable 类映射
节点类型 | 类 |
---|---|
自拍 | SelfieNode |
文档 | DocumentNode |
格式 | 即将到来 |
2. 启动工作流程
生成SDK令牌
curl --location --request POST 'https://sandbox-oop-api.advai.net/intl/openapi/sdk/v2/trans/start' \
--header 'X-ADVAI-KEY: XXXX' \
--header 'journeyId: xxx' \
--header 'Content-Type: application/json' \
--data '{
"referenceId": "123213123",
}'
名称 | 描述 |
---|---|
X-ADVAI-KEY | OneStop平台中的访问密钥: |
journeyId | 工作流的唯一ID: |
响应
{
"code": "SUCCESS",
"message": "SUCCESS",
"data": {
"sdkToken": "fbbcc9f3-fcb2-4d1e-a4c2-7a443f0d5307",
"transId": "073a78797a4e111f", # You need store this in your DB and fetch transaction detail using this one.
}
}
/**
token: The sdkToken of workflow, Referencing the step of generating the SDK Token.
context: The current UIViewController, this context.naviationController cannt be nil
*/
public func ex_start(token: String, context: UIViewController)
2. 回调
名称 | 参数 | 描述 |
---|---|---|
onReady | 开始 | |
onFinish | 状态:true | 错误状态:false |
onExit | nodeType:字符串 | 用户主动结束过程 |
onError | ||
onEvent | 事件名称:String, 参数:[string: string] |
事件名称 & 参数
名称 | 参数 |
---|---|
开始 | |
document_country_select | 国家:String |
document_type_select | 类型:string |
document_camera_capture | 类型:front,back,unknow |
document_upload | 类型:front,back,unknow |
selfie_camera_capture | 类型:2D,3D |
selfie_photo_upload | 类型:2D,3D |
enable_camera | 源:document,selfie |
retry | 源:document,selie |
失败 | 源:document,selie |
加载相机失败 | |
表单 | |
表单提交 | 状态:success,fail |
拒绝 | |
成功 | |
等待 |
您可以调用此方法来监听事件,例如:
/**
des: you can call this method multiple times
type: CallBackType
*/
OneStopManager.default.register(callbacker: CallBacker(onFinish: { status, para in
print("work finish --- \(status), \(para)")
}, onExit: { code, para in
print("work exit --- \(code), \(para)")
}))
您可以多次调用此方法,SDK将保存这些闭包并按顺序执行它们。
ipa 音量
使用自拍单节点,ipa 包的大小将增加 7.3M
许可
osp_selfie 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。