微包Uniapp演示项目

插件所在位置

nativeplugins/Ehking-WeBox

插件API

使用插件方法前请先引入插件

	const weBox = uni.requireNativePlugin('Ehking-Webox-WalletPayModule');
	if (weBox == null) {
		console.error("DCloud 没有加载到 weBox!!!")
	}

/**
 * 设置密码验证页面的验证方式,默认为 支付密码确认{@link "PAY_PASSWORD"}
 * PAY_PASSWORD // 默认密码
 * FORCE_PAY_PASSWORD // 强制密码
 * FACE_SCAN // 刷脸
 * FORCE_FACE_SCAN // 强制刷脸
 * FINGERPRINT // 指纹
 *
 * TIP:前端即使指定验证方式,但在服务端中发现指定验证方式与既定策略不符时,以服务端下发的验证方式为准
 */
weBox.setDefaultValidatePasswordType(
	payModeOfVerifyPwd: ""
);
/**
 * 唤起业务
 *
 * ### source 业务码: ###
 * VERIFY_CERT 安装数字证书
 * FIRSTSET_PASSWORD 设置支付密码
 * ACCESS_SAFETY 安全设置
 * ACCESS_CARDlIST 绑卡管理
 * VALUE_ADDED 增值服务
 * VALIDATE_PASSWORD 确认密码
 * MANUAL_CHECK_CER 手动下载证书
 * AUTO_CHECK_CER 自动下载证书
 * AUTH_PERSON 人像认证
 *
 * ### 以下为收银台业务 ###
 * RECHARGE 充值
 * TRANSFER 转账
 * WITHHOLDING 提现
 * REDPACKET 发红包
 * APP_PAY 微包支付和服务号订单支付
 * WEB_PAY WEB支付
 *
 * @return Object
 * {
 *   "source" : "", // 返回业务码
 *   "status" : "", // 返回状态码
 *   "errorMsg" : "", // 返回错误原因
 * }
 *
 * ### status 返回状态码 ###
 * PROCESS 返回商户处理中
 * SUCCESS 返回商户成功
 * FAIL 返回商户失败
 * CANCEL 返回商户取消
 *
 * TIP: 如果收银台业务返回 PROCESS/SUCCESS 仅代表业务提交成功, 具体业务结果需要商户自行调用服务端接口查询为准
 */
weBox.evoke(
	merchantId: "", // 商户ID
	walletId: "", // 钱包ID
	token: "", // 业务TOKEN, 由预下单返回
	source: "", // 业务码
	requestId: "", // 请求码, 用于服务端日志排查使用
);

/**
 * 设置颜色
 */
weBox.setColor(
	buttonColor: "", // 按钮背景颜色 例如:#0081ff
	toolBarColor: "", // 顶部TitleBar背景颜色 例如:#0081ff
	buttonTextColor: "", // 按钮文字颜色 例如:#FFFFFF
	toolBarTextColor: "", // 顶部TitleBar文字颜色 例如:#FFFFFF
);

/**
 * 设置toolbar返回键样式
 */
weBox.setToolBarBackImg(
	toolBarBackImgColor: 0 // 0黑色 // 1白色
);

/**
 * 获取SDK版本信息
 * return:
 * {
 * 	"version" : ""
 * }
 */
JSON json = weBox.getSdkVersion();

/**
 * 清除钱包缓存
 */
weBox.clearWalletCache();

/**
 * 设置Debug模式
 */
weBox.setDebug();

/**
 * 数字键盘是否随机排序
 */
weBox.setRandomKeyboard();

/**
 * 删除证书
 * callback:
 * {
 *   "delResult" : Boolean, // 是否删除成功
 *   "cerFile" : String, // 证书路径
 *   "existCer" : Boolean, // 证书是否存在
 * }
 */
weBox.deleteCer();

/**
 * 设置Http超时时间
 */
weBox.setTimeoutSeconds();

/**
 * 获取设备编码
 */
weBox.getDeviceNumber();

添加静态活体(即:刷脸认证)

静态活体功能需要联系我司商务经理进行申请授权文件。 申请授权文件中的包名应该与要集成的App保持一致

IOS平台

商户拿到正式.lic授权文件时,将正式.lic授权文件命名为SenseID_Liveness_Silent.lic引入到主工程中

Android平台

获取到拿到License文件后(即:xxx.lic)

<application>
   <meta-data
           android:name="com.ehking:android-sensetime:lic"
           android:value="0d5e791c-1577-45e7-ade5-b29795b9aa95.lic" />
</application>

当然你也可以通过 AndroidManifest 指定你的.lic名称

<meta-data
    android:name="com.ehking:android-sensetime:lic"
    android:value="YOU_CUSTOM_LICENCE_NAME.lic" />

iOS接入注意事项

* 商户编号、钱包ID或业务Code传入SDK错误时,会报出"授权失败"错误,比如拿到的业务token是充值的token,传入的businessCode应为充值的EHKWEBOX_BUSINESSCODE_RECHARGE,但是却传入了境内收单支付的EHKWEBOX_BUSINESSCODE_APP_PAY时,会报出该错误。
* 如需更换微包SDK导航条的返回按钮颜色或样式,请修改EHKWeboxBundle.bundle中的导航条返回按钮图片,暗黑模式下导航条返回按钮图片:public_fanhui_dark,高亮模式下导航条返回按钮图片:public_fanhui_highlight
* 切换登录账号时,调用freed方法释放缓存