微包对接文档

特殊说明

如果项目中引入了 FDFullscreenPopGesture 三方库来支持全屏侧滑
则需要在调用 sdk 页面的 viewWillAppear:方法中调用 self.navigationController.fd_fullscreenPopGestureRecognizer.enabled = NO;
禁用侧滑返回

安装

EHKWebbox 可通过 CocoaPods 使用。安装
它,只需将以下行添加到您的 Podfile:

pod 'EHKWebox'
pod "EHKWebox", :subspecs => ["Integration", "ValueAddService"]

支持库

    * SenseID_Liveness_Silent.lic (静态授权文件,需要添加)
    * EHKConfigurationEnum 枚举文件
    * EHKWeboxManager  SDK管理类

环境配置

    * info.plist
        * Privacy - Camera Usage Description //项目中需要活体检测和增值服务时,需要在plist 支持相机获取
        * Privacy - Microphone Usage Description //调用增值服务时,需要在plist 支持麦克风获取
    * 项目中使用了c++ 代码所以需要使用的项目调用sdk或者有一个.m文件变成.mm 让项目支持c++开发
    * 项目引用了 other linker flags  添加 -ObjC

操作

参数说明

    * walletId 用户钱包id
    * merchantId 商户商编
    * token 授权token
    * verson 当前sdk 版本号
    * isRandomKeyboard  键盘顺序
        * EHKWEBOX_SAFEKEYBOARD_NONE = 1,
        * EHKWEBOX_SAFEKEYBOARD_SEQUENCE,  // 安全键盘顺序
        * EHKWEBOX_SAFEKEYBOARD_RANDOM , // 安全键盘乱序
    * payType 支付方式控制
        * EHKWEBOX_PAY_NONE = 1,  余额和银行卡
        * EHKWEBOX_PAY_ONLYBALANCE,  // 只支持余额支付
    * authenticate 认证方式
        * EHKWEBOX_AUTHENTICATE_DYNAMIC,  // 动态活体设置 ,默认
        * EHKWEBOX_AUTHENTICATE_STAIC , // 静态活体设置
    * businessCode 业务Code
        * EHKWEBOX_BUSINESSCODE_NONE,
        * EHKWEBOX_BUSINESSCODE_BANK = 1,//银行卡列表1
        * EHKWEBOX_BUSINESSCODE_SETTING , //设置
        * EHKWEBOX_BUSINESSCODE_REDPACKAGE , //红包
        * EHKWEBOX_BUSINESSCODE_WITHDRAW , //提现
        * EHKWEBOX_BUSINESSCODE_TRANSFER, //转账
        * EHKWEBOX_BUSINESSCODE_RECHARGE, //充值
        * EHKWEBOX_BUSINESSCODE_ORDER,//订单支付
        * EHKWEBOX_BUSINESSCODE_VALIDATE_PASSWORD//密码确认
        * EHKWEBOX_BUSINESSCODE_APP_PAY//境内收单-微包app支付
        * EHKWEBOX_BUSINESSCODE_WEB_PAY//WEB支付
        * EHKWEBOX_BUSINESSCODE_SILENCE_RESCIND//人像认证
    * navigation 当前跳转控制器 UINavigationController
    * themeColor 主题颜色 (大部分点击按钮的颜色控制) 默认是0xFF5252
    * themeNavigationColor  navigation 导航栏颜色 白色
    * errorMessage 当报错的时候错误信息
    * callback  业务返回接口
    * EPWalletPayStatus  业务返回状态
        * EHKWEBOX_STASTUS_NONE = 1,
        * EHKWEBOX_STASTUS_PROCESS,//操作进行中,
        * EHKWEBOX_STASTUS_SUCCESS,//操作成功,
        * EHKWEBOX_STASTUS_FAILURE ,//失败
        * EHKWEBOX_STASTUS_CANCEL ,//取消
    * instanceManager 页面初始化(单例)
    * evoke  发起动作
    * freed 释放应用内存 如果需要的话,可以手动释放  (完全释放sdk,释放用户缓存信息)
    * cancelPay 取消收银台支付(支付密码弹框)
    * deleteCer:(NSString *)walletId
        * 参数:walletId 用户id
        * 功能:删除对应钱包id 的证书
        * 返回:删除成功返回 YES  失败或者没有返回 NO

发起动作 (具体参照 demo 中的业务)

    EHKWeboxManager * wallet = [EHKWeboxManager instanceManager];
    wallet.walletId = _walletId.text;
    wallet.token = _TF.text;
    wallet.merchantId = _merchantId.text;
    wallet.themeNavigationColor = [UIColor greenColor];
    wallet.themeColor = [UIColor orangeColor];
    wallet.businessCode = EHKWEBOX_BUSINESSCODE_BANK;
    wallet.navigation = self.navigationController;
    [wallet evoke:^(EHKWeboxManager * _Nonnull wallet, EHKWeboxStatus status) {
        if (status == EHKWEBOX_STASTUS_PROCESS) {
            [OMGToast showWithText:@"返回状态:操作进行中"];
        } else if (status == EHKWEBOX_STASTUS_FAILURE) {
            [OMGToast showWithText:[NSString stringWithFormat:@"%@%@",@"返回状态:操作失败原因:",wallet.errorMessage]];
        } else if (status == EHKWEBOX_STASTUS_SUCCESS) {
            [OMGToast showWithText:@"返回状态:成功"];
        } else if (status == EHKWEBOX_STASTUS_CANCEL) {
            [OMGToast showWithText:@"返回状态:取消"];
        }
    }];

业务返回

    EHKWEBOX_STASTUS_NONE = 1,
    EHKWEBOX_STASTUS_PROCESS,// 操作进行中(一般只在支付中产生,没有支付进行中操作)
    EHKWEBOX_STASTUS_SUCCESS,//操作成功 (一般只在支付中产生,支付成功)
    EHKWEBOX_STASTUS_FAILURE ,//操作失败 (一般只在支付中产生,支付失败,具体原因请查看errorMessage)
    EHKWEBOX_STASTUS_CANCEL ,//操作取消

注意事项

* 商户拿到正式.lic授权文件时,将正式.lic授权文件命名为SenseID_Liveness_Silent.lic引入到主工程中
* 商户编号、钱包ID或业务Code传入SDK错误时,会报出"授权失败"错误

版本说明

- 1.5.0
- 自动集成商户证书,无需手动导入

- 1.4.0
- 新增沉默账户解除接口

- 1.3.1
- 优化 WEB 静态页面通过 DNS 加载

- 1.3.0
- 新增 WEB 支付功能

- 1.2.0
- 设置密码时增加用户协议,需同意协议方可继续下一步

- 1.0.7.1
- 优化信用卡绑卡功能

- 1.0.7
- 增加刷脸支付和密码确认刷脸功能

- 1.0.6
- 增加密码确认功能
- 增加微包服务号支付唤起功能
- 增值服务功能拆分
- 增加银联侧无跳转

- 1.0.5
- sdk 部分功能优化
- 增加增加增值服务功能

- 1.0.4
- 增加订单支付功能

- 1.0.3
- SDK 唤醒时间优化 2 期
- 静默活体跟换 UI 样式
- 增加安全键盘功能:为了安全起见防止截屏录屏功能,返回取消通知
- 增加删除证书功能
- 增加顺序数字键盘从 1 开始

- 1.0.2
- SDK 唤醒时间优化 1 期
- 转账、发红包支持配置是否仅使用余额支付

- 1.0.1
- 支付键盘是否乱序可配置