微信刷脸支付插件

简介: 微信刷脸支付插件

本插件分装了微信刷脸支付Android SDK v2.21.114版本。

微信刷脸支付官方文档:

https://pay.weixin.qq.com/wiki/doc/wxfacepay/develop/android/facepay.html

本插件实现封装了SDK中的5个方法:

1、程序启动时初始化 initWxpayface

2、获取数据 getWxpayfaceRawdata

3、人脸识别 getWxpayfaceCode(获取用户信息)

4、释放资源 releaseWxpayface

5、启动防火墙配置 enableFirewall

有异步返回信息的方法会通过globalEvent的形式进行返回信息,具体请参考示例代码。

具体刷脸支付业务流程的实现,请参考官方文档。

<template>
  <view>
    <view>
      <button @click="getversion()">getversion</button>
      <button @click="initWxpayface()">initWxpayface</button>
      <button @click="getWxpayfaceRawdata()">getWxpayfaceRawdata</button>
      <button @click="getWxpayfaceCode()">getWxpayfaceCode</button>
      <button @click="releaseWxpayface()">releaseWxpayface</button>
      <button @click="enableFirewall()">enableFirewall</button>
      <button @click="openfacepay()">完整流程</button>
    </view>
    <text v-for="(item,index) in msglist">{{item}}\n</text>
  </view>
</template>
<script>
  const wxfacepayzz = uni.requireNativePlugin('zzzili-wxfacepayzz');
  export default {
    data() {
      return {
        msglist: []
      }
    },
    onLoad() {
      this.msglist.push('start test print')
    },
    methods: {
      getversion: function() {
        this.msglist.push(wxfacepayzz.getVersion());
      },
      initWxpayface: function() {
        var map = {
          ip: "192.168.1.1", //若没有代理,则不需要此行
          port: "8888", //若没有代理,则不需要此行
          user: "mEtnUser", //若没有代理,则不需要此行
          passwd: "mEtnPassword", //若没有代理,则不需要此行
          proxy_type: 1, //若没有代理,则不需要此行        
          perform_mode: "LOW_PERFORM" //低性能表现,默认关闭美颜等
        };
        var that = this;
        this.msglist.push('wxfacepayzz.getVersion()' + wxfacepayzz.initWxpayface(map, function(res) {
          that.msglist.push(JSON.stringify(res));
        }));
      },
      getWxpayfaceRawdata: function() {
        var that = this;
        this.msglist.push('wxfacepayzz.getWxpayfaceRawdata()' + wxfacepayzz.getWxpayfaceRawdata(function(res) {
          that.msglist.push(JSON.stringify(res));
        }));
      },
      getWxpayfaceCode: function() {
        var map = {
          appid: "123456",
          mch_id: "123456",
          store_id: "123456",
          out_trade_no: "123456",
          total_fee: "0.01",
          face_authtype: "FACEPAY",
          authinfo: "124156565",
          face_code_type: "1"
        };
        var that = this;
        this.msglist.push('wxfacepayzz.getWxpayfaceCode()' + wxfacepayzz.getWxpayfaceCode(map, function(res) {
          //wxpayfaceCallBack
          that.msglist.push(JSON.stringify(res));
        }, function(res) {
          //updateResultWxpayfaceCallBack
          that.msglist.push(JSON.stringify(res));
        }));
      },
      releaseWxpayface: function() {
        this.msglist.push('wxfacepayzz.releaseWxpayface()' + wxfacepayzz.releaseWxpayface());
      },
      enableFirewall: function() {
        var mchId = "123456";
        var subMchId = "456789";
        var that = this;
        this.msglist.push('wxfacepayzz.enableFirewall()' + wxfacepayzz.enableFirewall(mchId, subMchId, function(res) {
          that.msglist.push(JSON.stringify(res));
        }));
      },
      openfacepay(){
        var that = this;
        //1.初始化
        wxfacepayzz.initWxpayface({},function(res){
          console.log(res);
          //2.获取rawdata
          wxfacepayzz.getWxpayfaceRawdata(function(res2){
            console.log(res2);
            /
            //3.根据返回的rawdata数据,调用Api接口:获取调用凭证,得到参数authinfo
            /
            //4.进行人脸识别
            var map = {
              appid: "123456",
              mch_id: "123456",
              store_id: "123456",
              out_trade_no: "123456",
              total_fee: "0.01",
              face_authtype: "FACEPAY",
              authinfo: "124156565",
              face_code_type: "1"
            };
            wxfacepayzz.getWxpayfaceCode(map, function(res3) {
              //wxpayfaceCallBack
              console.log(res3);
              //5.释放资源
              wxfacepayzz.releaseWxpayface()
            }, function(res4) {
              //updateResultWxpayfaceCallBack
              console.log(res4);
              //5.释放资源
              wxfacepayzz.releaseWxpayface()
            })
          })
        });
      },
    }
  }
</script>
<style>
</style>
相关文章
|
2月前
|
算法 Java API
用录像代替视频聊天,虚拟视频聊天软件微信QQ, 微信第三方插件虚拟视频插件
核心视频处理模块使用JavaCV实现视频捕获、特效处理和虚拟设备输出 Xposed模块通过Hook微信摄像头相关方法实现视频流替换
|
3月前
|
Shell 数据安全/隐私保护 Python
微信虚拟摄像头插件,QQ虚拟相机拍摄录像工具,替换虚拟视频聊天软件
完整的虚拟摄像头实现方案,包含多个模块的代码实现。这个项目可以模拟摄像头设备,并在微信/QQ视频
|
4月前
|
Android开发
微信自动发朋友圈脚本,定时发朋友圈插件群发,多账户发朋友圈批量工具
整的微信朋友圈自动发布功能,包含环境检查、界面元素定位、图片识别、异常处理等模块
|
2月前
|
Shell Android开发 Python
微信多开脚本,微信双开器脚本插件,autojs开源代码分享
AutoJS脚本实现安卓端微信多开,通过无障碍服务 Python脚本提供跨平台解决方案,自动检测微信安装路径
|
3月前
|
JSON 机器人 API
微信机器人自动回复插件,vx自动回复机器人脚本助手,python框架分享
这个微信机器人系统包含三个主要模块:主程序基于itchat实现微信消息监听和自动回复功能
|
3月前
|
移动开发 小程序 开发工具
揭秘微信/支付宝6大支付方式:从扫码到刷脸,谁在偷偷赚你的手续费?优雅草卓伊凡
揭秘微信/支付宝6大支付方式:从扫码到刷脸,谁在偷偷赚你的手续费?优雅草卓伊凡
527 0
揭秘微信/支付宝6大支付方式:从扫码到刷脸,谁在偷偷赚你的手续费?优雅草卓伊凡
|
3月前
|
Java 计算机视觉
微信虚拟视频聊天插件,QQ抖音快手虚拟摄像头工具,替换相机视频流java
实现包含了虚拟摄像头核心功能,可以捕获真实摄像头视频流,处理后输出到虚拟摄像头设备。
微信qq陌陌soul,虚拟视频聊天插件,xposed摄像头替换工具
包含三个核心模块:虚拟摄像头服务、视频处理引擎和Xposed框架集成。
|
3月前
|
监控 数据库 数据安全/隐私保护
微信自动抢红包永久免费软件, 自动抢红包软件微信,脚本插件抢红包【python】
该实现包含三个核心模块:主监控程序、数据库记录模块和配置模块。主程序使用itchat监听微信消息
|
3月前
|
Android开发 数据安全/隐私保护 Python
微信抢红包脚本安卓插件,微信xposed抢红包模块, magisk微信抢红包模块
这个代码实现了一个完整的微信抢红包自动化工具,包含红包检测、自动点击、日志记录等功能

热门文章

最新文章