微信硬件蓝牙jsapi详解

2018年06月21日 08:43 | 2639次浏览 作者原创 版权保护

关于微信硬件蓝牙jsapi的概述介绍我在这里根据官方文档结合自己的理解给大家解释说明一下,当然如果嫌我啰嗦,可以直接查询官方文档,地址https://iot.weixin.qq.com/wiki/new/index.html?page=4-7 。首先咱们看官方文档是怎么说的,然后逐一解释。

提醒:微信硬件jsapi官方已停止更新,建议用户在开发硬件设备的时候接入微信小程序蓝牙接口,而不是微信公众号,微信公众号的硬件接口以及实现逻辑实际上比较绕,好多初学者需花费大量的时间和精力来研究,并且公众号接入的硬件设备很不稳定体验也非常差,而微信小程序则体验良好,实现的逻辑比较简单。

一、微信jsapi是网页javascript的接口,该接口允许厂商的网页对局域网设备(设备必须支持AirKiss3.0)和蓝牙设备进行操作。例如扫描设备,连接设备,收发数据,绑定设备等。

释疑:上面描述的AirKiss3.0是针对网络硬件设备的,我们在这里针对的是蓝牙设备,那么您的蓝牙设备必须嵌入实现微信AirSync技术协议的蓝牙模块,关于AirSync的技术协议介绍请查询官方文档,地址https://iot.weixin.qq.com/wiki/new/index.html?page=4-2-1


二、微信硬件JSAPI接口属于微信JS-SDK的一部分,所以硬件JSAPI的使用首先需要遵循微信JS-SDK的使用规范。微信JS-SDK的使用方法请参考公众平台微信JS-SDK说明文档

 释疑:看到了吧,官方文档已经说明,接入微信硬件jsapi之前,开发者还必须学习微信js-sdk的接入,否则的话开发者直接上手微信硬件jsapi会很懵逼,所以 开发者还是先学会微信js-sdk的开发吧。   

三、

微信硬件JSAPI使用:

微信JS-SDK是使用JSAPI的基础,必须了解新框架的基本用法,如wx.config函数和wx.ready函数,这是所有JSAPI使用的前提

在JS-SDK初始化的基础上,请按如下方法使用微信硬件JSAPI:

a. 需要在wx.config的方法的参数jsApiList数组中,传入需要额外使用的jsapi名称。(在使用任何jsapi的接口前,必须先调用wx.config方法)。

b. 需要在config方法中传入一个beta字段,值为true,则会在注入wx.invoke方法来调用还未开放的jsapi方法。(页面加载时就调用jsapi,则必须放到wx.ready回调中)。

 释疑:上面已经说的很清楚了,就像我们在第二步解释的一样,开发微信硬件蓝牙(网络)jsapi,前提必须学习微信公众平台js-sdk,否则一切白玩。具体js-sdk的学习,你也可以直接根据官方文档学习,如果嫌看文档比较慢,那么本人也分享了微信公众平台js-sdk学习教程,地址https://www.vxzsk.com/49.html

四、微信硬件蓝牙jsapi接入流程图

 释疑:上图标注了硬件设备和微信app之间通信的两种数据通道。

黑色箭头 公众号html界面发送apdu命令到设备,设备最终返回数据到厂商服务器,厂商服务器也就是咱们开发者自己工程项目的服务器后端(数据返回到服务器配置url的 servelet的post方法中了)。这也是导致初学者开发者在开发h5界面发送指令后,无论如何在h5前端界面也得不到蓝牙设备返回数据包的原因,这是个坑,大家注意。

红色箭头 也就是我们接下来介绍的通道路径,公众号html界面发送apdu指令到设备,设备最终返回数据到发送html命令的界面,意思就是H5界面发送指令到设备,设备返回响应数据包到H5界面,而不是服务器端。

注意:红色箭头是我们接下来介绍的通道
五、用户使用场景

用户场景用户打开微信,进入硬件公众号,点击菜单,进入厂家自定义的html界面。
用户点击html界面上的扫描按钮,开始扫描周围设备。当扫到多个设备的时候,html界面显示一个设备列表。
用户点击某个设备(该设备未绑定),进行绑定。html界面显示绑定成功,并开始连接设备。Html界面显示连接设备成功

小说《我是全球混乱的源头》
此文章本站原创,地址 https://www.vxzsk.com/1810.html   转载请注明出处!谢谢!

感觉本站内容不错,读后有收获?小额赞助,鼓励网站分享出更好的教程


上一篇:Java 基本概念 下一篇:java面向对象编程
^