微信硬件平台蓝牙打印机
方案一:
注意:这一步可以获取到设备ID和二维码,如果需要引用的可以通过二维码,而设备ID是微信后台生成的。
直接在浏览器中这样请求即可返回你需要的设备和二维码,上图只是为了大家更加明白这个是干嘛的:https://api.weixin.qq.com/device/getqrcode?access_token=TOKEN&product_id=产品ID
此接口会返回一个链接,用链接生成二维码。 用户扫描后,绑定设备。就会与设备绑定。 只有绑定后的设备微信才会主动连接 。
方案二:
1.设备授权
https://api.weixin.qq.com/device/create_qrcode?access_token=ZWcTAh_Ux2p2J6zhXeUt2cQZqMqjfShLbSTK661xrQYagO8ONtqG8LAh6jeTsNTjv7hu-ZsSQzlQOwubrsrmWgJDUa_WZVQH4muVZ75dhQGzBXdMK4lBc0FyHaeF35AKXZWjADANPM
参数:
{
"device_num":"1",
"device_list":[
{
"id":"设备Id",
"mac":"Mac地址,不要包含冒号",
"connect_protocol":"3",
"auth_key":"",
"close_strategy":"1",
"conn_strategy":"1",
"crypt_method":"0",
"auth_ver":"0",
"manu_mac_pos":"-1",
"ser_mac_pos":"-2",
"ble_simple_protocol": "0"
}
],
"op_type":"(0|1)0表示授权设备,1表示更新设备",
"product_id": "产品类型Id(公众平台设备功能中产品ID)"
}
调用此接口后,在公众号主页面就会主动连接设备。
注意:这一步在链接中请求的设备ID可以用方案一中得到的设备ID,但是不一定要用 , 因为微信后台生成的是公众平台唯一ID加上后面的他生成的数据组成的。
完成上面的其中一个步骤后接着执行下面的方法:
1.页面上调用方法
wx.invoke('startScanWXDevice', { "connType": "blue", "btVersion": 'ble' }, function (res) {
$('#result').append('开始扫描' + '\r\n');
});
开始搜索周边设备,搜索到的结果会被onScanWXDeviceResult 监听到,其中会包含有设备Id和绑定状态
2.选择没有绑定设备,调用getWXDeviceTicket获取到ticket后,将ticket和设备Id,传入后台,代码如下:
//绑定设备
$("#bind").click(function () {
wx.invoke('getWXDeviceTicket', { "deviceId": mac, 'type': '1' }, function (res) {
// $('#result').append(JSON.stringify(res) + '\r\n');
//获取ticket
var ticket = res.ticket;
$.ajax({
url: '/Test/Bind',
type: 'post',
data: { ticket: ticket, mac: mac },
success: function (data) {
console.log(JSON.stringify(data));
}
});
});
});
3.后台调用:https://api.weixin.qq.com/device/bind?access_token=ACCESS_TOKEN 参考页面地址:http://iot.weixin.qq.com/wiki/new/index.html?page=3-4-7 绑定的接口,完成设备和用户的绑定
4.绑定成功后,会被onWXDeviceBindStateChange监听到:
wx.on('onWXDeviceBindStateChange',
function (res) {
//把res输出来看吧
$('#result').append(JSON.stringify(res) + '\r\n');
});
5.绑定后,IOS的设备就会主动连接设备了。
好了,下面开始给大家介绍坑。
为什么说IOS会主动连接设备呢?我想在这里说,他不光主动,还特么秒连,如果你们测试连接的时候,尽量找一个IOS手机放在身边,否则你连不上的时候大概就会以为是程序有问题了。 下面来讲讲安卓机,安卓机有时候连接得非常快,有时候会灰常灰常慢,或者直接连不上,任你想破脑袋,最终的结果就是,有时候还是连不上,经过研究发现,这个是因为当你进入微信对应的公众号时,上面有一个正在连接,或者是已连接0个设备,这个是因为微信会不断的去扫描设备,如果扫描到了,会直接请求配对,所以有时候我们没点页面中的扫描按钮就会出现已连接一个设备。开始说重点了 , 如果我们通过公众号,点击网页进入页面,点击扫描设备时,会发现身边的设备都扫描到了,会进入(onScanWXDeviceResult)这个监听函数中,但是连接有时候会连不到,但是扫描的那个函数虽然有时会扫描不到,但是公众号上方的那个不断的扫描和请求是一直都在执行的,如果它连接到设备了,那么你进入网页点扫描的时候会秒连。在这里就是想告诉大家,公众号上方的那个连接是一直都存在的。有时候忽然连上了也许就是它连上了。如果是一个公众号连接多个设备的时候(问题只存在安卓机)在连接中也只能连接一个设备的,连接上来的都是公众号上方的那个连接做的事。
在微信公众号连接设备中,虽然微信会不断的扫描,但是扫描到设备之后只会连接一次,而IOS一次就连接上了,安卓系统完全靠运气!
有不足之处,请大家踊跃发言,提出来大家一起学习,共同进步,让更多人少遇坑!
微信硬件平台蓝牙打印机相关推荐
- 微信小程序连接蓝牙打印机打印图片示例
微信小程序连接蓝牙打印机示例 完整的代码示例请点击看github 小程序连接蓝牙打印机打印文本与二维码等示例在 github 上都能找到一些,唯独打印图片这个案例几乎没有.希望能帮助到有打印图片需求的 ...
- uniapp微信小程序连接蓝牙打印机 打印文字、图片
首先感谢几位的文章分享 https://blog.csdn.net/guairena/article/details/127941515 https://blog.csdn.net/qq_379700 ...
- 微信硬件蓝牙开发各种坑不完全开发指南
几个基本要用的东西: 1.微信公众平台 网址:https://mp.weixin.qq.com 申请微信公众号,获取微信测试号. 2.微信JS-SDK说明文档 网址:http://mp.weixin. ...
- 一张图读懂基于微信硬件平台的物联网架构
原文链接:点击打开链接 一. 基于微信硬件平台的物联网架构图示 上图涵盖以下信息: 1. 基于微信硬件平台的物联网的架构组成,有微信公众平台/硬件平台.第三方厂商云后端.手机微信/公众号.微信硬件 ...
- 微信硬件平台的基础接入和硬件云标准接入分析
本文分析基于微信硬件平台的物联网架构,将从物联网的核心要素.物联网的关键场景.微信硬件平台的通信协议分析三个维度去分析.更多的微信硬件平台开发的深度技术原创分享请订阅微信公众号:嵌入式企鹅圈. 微信硬 ...
- 微信硬件蓝牙开发指南
几个基本要用的东西: 1.微信公众平台 网址:https://mp.weixin.qq.com 可以在此申请微信公众号,获取微信测试号. 微信测试号拥有所有功能权限,如果你有正式的企业服务号,就不必用 ...
- 微信硬件蓝牙开发教程之添加蓝牙设备(1)
@V型知识库原创 已推出最新微 信硬件jsapi学习笔记 地址 http://www.vxzsk.com/282.html 申请设备功能 a. 登录公众平台,点击左边功能栏的"添加功能 ...
- 微信硬件平台智能路由行业解决方案
路由器是提供Wi-Fi网络的重要设备,服务了亿万的家庭,但依然被认为是非常专业的设备,普通用户都不懂得如何使用.我们希望通过微信硬件平台的能力,降低用户使用路由器的门槛,更好的管理自己的网络,更便捷的 ...
- android蓝牙打印机
您还未登录!|登录|注册|帮助 首页 业界 移动 云计算 研发 论坛 博客 下载 更多 reality_jie的专栏 编程的过程是一种微妙的享受 目录视图 摘要视图 订阅 CSDN2013年度博客之星 ...
最新文章
- 使用putty远程linux服务
- linux系统下设置oracle开机自动启动
- 元素节点、属性节点、文本节点 的节点属性
- R.java文件介绍
- JSR303数据校验-2021新版
- 有没有python的班_【万字长文】别再报班了,一篇文章带你入门Python
- php版本7历史,php的版本发展历史(1995-2020)
- 阿里P8大佬亲自讲解!朝阳java培训
- React学习手记4-组件分类(受控组件和非受控组件)
- 笨方法“学习python笔记之关键字
- Golang笔记——tcp 编程
- 数据分析:AI智能科技影响下,电话机器人实现落地
- 野火 FireConfig 配置连接Wifi
- STM32F103_study54_The punctual atoms(STM32 There have always been questions about learning STM32)
- 计算机网络基础以及linux面试知识点总结
- Mac下的SVN客户端
- ALSA子系统(七)------simple_card添加虚拟声卡
- 计算机领域的所有SCI一区期刊,这是最顶级期刊了
- 2022年大学应届生破千万,就业形势严峻,打工人准备好了吗?
- 《富爸爸,穷爸爸》读后感——怎么实现财务自由
热门文章
- 软件测试需要会python吗_真实揭秘90后职业新选择:25岁刚入行软件测试,竟拿到这么多薪资……...
- 解决“由于文件许可权错误 word无法完成保存”问题
- 转载-文件资源管理器无响应的解决办法
- SAP SE38代码大小写设定
- 控制过滤器Filter执行顺序
- 虚函数 虚继承 抽象类
- 拓展:将simulink的仿真图_在matlab画出_复制到word
- 两台linux服务器互相自动备份
- 港澳出入境通行证办事流程
- RPG Maker XP游戏制作方法(六)