一、开发准备
注意:小程序授权指引及接入准备参见 微信小程序接入指引。
二、2. 安装 SDK
将小程序 SDK 文件夹放在小程序根目录下,使用 require 函数引入。
const Verify = require('/verify_mpsdk/main');
三、3. 调试 SDK
请在微信开发者工具中使用手机“预览”模式进行调试,请勿使用“真机调试”。
四、4. 卸载 SDK
卸载时删除verify_mpsdk文件夹,移除相应 require 代码即可。
五、主包接入流程
1. 下载支持 Taro 的小程序 SDK 版本。
注意:后续如需更新,请关注 人脸核身控制台 新版本发布。
2. 复制 verify_mpsdk 到 src 目录下 。
3. 在app.config.js / app.config.ts 中配置页面路径。
pages: [ … "verify_mpsdk/index/index" ],
4. 修改 config/index.js 的文件配置,排除 verify_mpsdk 代码编译。
export default defineConfig(async (merge, { command, mode }) => { const baseConfig = { … copy: { … patterns: [ { from:'src/verify_mpsdk/',to:'dist/verify_mpsdk/' }, ], } }, …})
5. 初始化 SDK。
·初始化及调用参考 微信小程序接入,参数无变化。
·在 app.js 的 onLaunch()中加入相应代码
// app.jsimport {init} from './verify_mpsdk/main';const App = { onLaunch: function () { // 初始化慧眼实名核身组件 init(); }}export default App
6. 调用 SDK 功能函数 wx.startVerify()。
在需要实名认证的地方调用 wx.startVerify()进入实名认证页面,认证完成会触发对应的回调函数。
// 单击某个按钮时,触发该函数gotoVerify: function () { … // 调用实名核身功能 wx.startVerify({ data: { token: BizToken // BizToken }, success: (res) => { // 验证成功后触发 // res 包含验证成功的token, 这里需要加500ms延时,防止iOS下不执行后面的逻辑 setTimeout(() => { // 验证成功后,拿到token后的逻辑处理,具体以客户自身逻辑为准 }, 500); }, fail: (err) => { // 验证失败时触发 // err 包含错误码,错误信息,弹窗提示错误 setTimeout(() => { wx.showModal({ title: "提示", content: err.ErrorMsg, showCancel: false }) }, 500); } });}
六、参考资料
Taro 使用原生模块
七、分包接入流程
1. 下载支持 Taro 分包的小程序 SDK 版本。
注意:请在人脸核身控制台下载最新版本的 SDK。(1.0.33及以上)
2. 拷贝 verify_mpsdk 到 src 目录下。
3. 在app.config.js / app.config.ts中配置分包页面路径。
"subpackages": [ { "root": "verify_mpsdk", "pages": [ "index/index" ] } ],
4. 修改 config/index.js 的文件配置,排除 verify_mpsdk 代码编译,建议参考如下示例:
export default defineConfig(async (merge, { command, mode }) => { const baseConfig = { … copy: { … patterns: [ { from:'src/verify_mpsdk/',to:'dist/verify_mpsdk/' }, ], } }, …})
5. 初始化 SDK。
·初始化及调用参考 微信小程序接入,参数无变化。
·在 app.js 的 onLaunch() 中加入相应代码,如下所示:
// app.jsimport {init} from './verify_mpsdk/main';const App = { onLaunch: function () { // 初始化慧眼实名核身组件 init(); }}export default App
6. 调用 SDK 功能函数 wx.startVerify()。
·在需要实名认证的地方调用 wx.startVerify() 进入实名认证页面,认证完成会触发对应的回调函数。
// 单击某个按钮时,触发该函数gotoVerify: function () { … // 调用实名核身功能 wx.startVerify({ data: { token: BizToken // BizToken }, success: (res) => { // 验证成功后触发 // res 包含验证成功的token, 这里需要加500ms延时,防止iOS下不执行后面的逻辑 setTimeout(() => { // 验证成功后,拿到token后的逻辑处理,具体以客户自身逻辑为准 }, 500); }, fail: (err) => { // 验证失败时触发 // err 包含错误码,错误信息,弹窗提示错误 setTimeout(() => { wx.showModal({ title: "提示", content: err.ErrorMsg, showCancel: false }) }, 500); } });}
7. 添加域名服务器白名单
你需要在小程序上线前进入:微信公众号管理平台 > 管理 > 开发管理 > 开发设置 > 服务器域名,将以下域名添加至白名单,小程序前端接口请求有域名白名单限制,未添加白名单的域名只能在调试模式下运行。
// request 合法域名、uploadFile 合法域名、downloadFile 合法域名这三种都要添加faceid.qq.com、faceid.qcloud.com// socket合法域名 (v1.0.20及以上版本需要添加以下socket域名)wss://faceid.qq.com// v1.0.17及以上版本身份校验环节如需NFC方式读取证件,需要添加以下socket域名wss://idcloudread.eidlink.com
八、分包示例 Demo
示例 Demo 仅供演示参考,请先掌握分包接入逻辑,随后按自身业务需求调整代码。
分包示例 Demo 下载