从零開始搭建微信硬件开发环境全过程——1小时掌握微信硬件开发流程
笔者决定在嵌入式企鹅圈2016年的首篇文章中,发表微信硬件物联领域极具实践价值的文章,它将能指引和帮助不论什么有兴趣于物联网开发的童鞋们高速掌握微信硬件开发流程。仅仅需一个小时。而再不须要通过揣摩微信硬件浩瀚的文档资料来完毕艰难构建。
笔者之前以前撰写过一篇文章《基于微信硬件公众平台的智能控制开发流程》介绍微信硬件开发的流程,但该篇文章是理论性的描写叙述。而本篇文章是全然可操作实践的,请结合两篇文章理解。技术咨询请发邮件至yqwucheng@163.com
本篇文章的目的是高速搭建微信硬件开发的环境,完毕微信硬件物联Demo。
直接上图,傻瓜式教程!
1. 申请微信硬件測试公众号
链接:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login,用自己的微信扫一扫即能够完毕注冊申请。微信測试公众账号重要信息包含:appID、appsecret和微信号。开发project师代表厂商/运营商的角色,所以这里的微信号事实上是代表厂商/运营商的微信ID.
2. 开通測试微信公众账号的设备功能接口
开启后例如以下图:
3. 加入设备产品,获得产品编号
点击设置进行加入:
加入后能够看到产品的编号,例如以下图。
这里仅仅是演示。选择设备品类为“血压计”,其编号是4735. 表明要生成微信蓝牙血压计(事实上是笔者的微信蓝牙开发板)。
4. 蓝牙设备授权
微信硬件平台的核心功能之中的一个就是对硬件设备进行身份管理。授权即是硬件设备的身份注冊,其须要硬件设备的唯一地址码MAC(比如新生儿的指纹)以及人为给这个硬件设备起的名字id(比如新生儿的姓名)。
授权我们通过微信网页调试工具进行,链接是:http://mp.weixin.qq.com/debug/。
1) 获取access_tocken
2) 设备授权
授权字段定义请參考:http://iot.weixin.qq.com/document-2_6.html。
也能够依照下面改动:
这里要特别注意。微信硬件平台有时更新了策略又没说明确。坑非常多。
应该在2015年9月前注冊的測试号能够在不写product_id时也能成功授权,但近期注冊的測试号假设不写这个product_id会报下面错误:
{"errcode":100020,"errmsg":"accountquota not enough"}
说是“账号设备授权配额已用完。需又一次申请”。晕倒。我刚注冊的账号,配额就用完了,天知道微信为什么要这么搞。最后添加产品编号product_id即能够完毕注冊。
5. 微信硬件測试公众号自己定义菜单
1) 获取access_tocken,同上。
2) 自己定义菜单,定义两个按钮
自己定义菜单的效果例如以下:假设用户关注了该公众号,则进入该公众号后会看究竟部有开灯和关灯两个button:
6. 部署后台开发环境
1) 安装JDK,安装后设置系统高级环境变量JAVA_HOME。指向JDK的安装文件夹。
2) 安装tomcat,改动apache-tomcat-7.0.64\conf\server.xml,将web服务port改为80
3) 启动tomcat, 点击apache-tomcat-7.0.64\bin\startup.bat
4) 安装MyEclipse
5) MyEclipse配置Tomcat
6) 下载微信蓝牙后台服务例子projectroseblue
7) MyEclipse导入roseblueproject
8) MyEclipse配置服务推送。即生成类文件并复制到tomcat的相应文件夹(apache-tomcat-7.0.64\webapps)。
9) 后台project配置,改动project配置属性指向微信測试账号
7. 配置微信測试公众号的第三方服务地址。指向tomcat所在的web服务文件夹
8. MyEclipse生成设备二维码
这里的device_id和mac两个值和设备授权时的值务必保持一致。Device_id能够随意取值,而mac必须是蓝牙设备的真实MAC地址。
以Java application直接执行这个类能够生成设备二维码,生成路径能够改动:
9. 手机用户扫描关注这个设备二维码。完毕设备绑定。
比如昵称为O的微信用户绑定了这个设备,则在微信測试公众号的后台能够看到它的微信号。
10.改动roseblueproject的通信设备配置
临时不使用数据库,能够将全部的数据库操作凝视掉,并直接硬编码。
deviceType即是第1步里面的微信号
deviceID即是设备授权时的deviceID
openID是绑定这个设备的用户的手机微信ID。如昵称为O的微信ID。
11.实现Airsync协议的微信蓝牙开发板上电。開始广播。
12.微信昵称为O的用户打开订阅的微信測试公众号,開始自己主动扫描并连接微信蓝牙开发板。
13.公众号连上微信蓝牙开发板后,即能够发开灯和关灯指令,对微信蓝牙开发板进行控制。
假设想要以上安装程序和代码敬请关注嵌入式企鹅圈。并发消息给嵌入式企鹅圈获取资讯。
笔者前天受邀请到深圳參加CSDN优秀专家年底party,分享一下活动合影。
很多其它嵌入式Linux和物联网原创技术分享敬请关注微信公众号:嵌入式企鹅圈
转载于:https://www.cnblogs.com/llguanli/p/8889465.html
从零開始搭建微信硬件开发环境全过程——1小时掌握微信硬件开发流程相关推荐
- # 从零開始搭建Hadoop2.7.1的分布式集群
Hadoop 2.7.1 (2015-7-6更新),Hadoop的环境配置不是特别的复杂,可是确实有非常多细节须要注意.不然会造成很多配置错误的情况.尽量保证一次配置正确防止重复改动. 网上教程有非常 ...
- 從零開始學 ReactJS:最完整的 React 生態系入門教程
转自:https://github.com/kdchang/reactjs101 從零開始學 ReactJS(ReactJS 101)是一本希望讓初學者一看就懂的 ReactJS 中文入門教學書,由淺 ...
- opengl微开发之1-从零開始
对OpenGL有一点了解之后,如今開始真正编写代码. 今天的内容: 使用FreeGLUT创建OpenGL的上下文环境 初始化GLEW 创建一个OpenGL的的模板范例 第一步: 一个OpenGL的上下 ...
- Spring 从零開始-05
最终能到Spring的AOP编程了,AOP的概念特别的多.所以须要你在開始之前有点了解,然后通过代码慢慢学习! - 切面(Aspect):一个关注点的模块化,这个关注点实现可能另外横切多个对象.事务管 ...
- 从零開始学习制作H5应用——V5.0:懊悔机制,整理文件夹,压缩,模板化
经过前面四个版本号的迭代.我们已经制作了一个从视觉和听觉上都非常舒服的H5微场景应用,没有看过的请戳以下: V1.0--简单页面滑动切换 V2.0--多页切换.透明过渡及交互指示 V3.0--增加lo ...
- [Golang] 从零開始写Socket Server(3): 对长、短连接的处理策略(模拟心跳)
通过前两章,我们成功是写出了一套凑合能用的Server和Client,并在二者之间实现了通过协议交流.这么一来,一个简易的socket通讯框架已经初具雏形了,那么我们接下来做的.就是想办法让这个框架更 ...
- 从零開始学androidlt;SeekBar滑动组件.二十二.gt;
拖动条能够由用户自己进行手工的调节,比如:当用户须要调整播放器音量或者是电影的播放进度时都会使用到拖动条,SeekBar类的定义结构例如以下所看到的: java.lang.Object ↳ an ...
- unity3d从零開始(五):了解摄像机
1.简单介绍 Unity的摄像机是用来将游戏世界呈现给玩家的,游戏场景中至少有一台摄像机.也能够有多台. 2.类型 Unity中支持两种类型的摄像机,各自是Perspective(透视)以及Ortho ...
- python软件包自带的集成开发环境-实验一 熟悉Python的集成开发环境
实验一 熟悉Python的集成开发环境 一.实验目的与要求 1.了解什么是Python: 2.了解Python的特性: 3.掌握下载和安装Python的方法: 4.学习执行Python命令和脚本文件的 ...
- java实现沙箱测试环境支付宝支付(demo)和整合微信支付和支付宝支付到springmvc+spring+mybatis环境全过程(支付宝和微信支付)
一.支付宝测试环境代码测试 1.下载电脑网站的官方demo: 下载地址:https://docs.open.alipay.com/270/106291/ 2.下载解压导入eclipse readme. ...
最新文章
- ipvs-dr模型及算法、keepalived基本应用、keepalive+ipvs实现高可用
- Java快速生成20亿数字_关于内存:Java-打印10亿到20亿
- 设计模式--组合模式
- 计算机系统win7安装教程,惠普EliteDesk 705 G3电脑安装win7系统方法
- 一.redis 环境搭建
- 什么叫光端机?视频光端机的分类具体有哪些?
- uva 11054——Wine trading in Gergovia
- display:table的用法
- Java 数组转成集合List三种方法和(数组、集合List、Set相互转换)
- 实体验证---测试代码
- 【干货】2020顶级数据团队建设全景报告-清华大学.pdf(附下载链接)
- 5-5array统计tcp连接状态数量
- c#--实例选号器--实现打印、序列化方式保存、二维码
- linux gnu编译器下载,GNU Compiler Collection(gcc编译器)下载_GNU Compiler Collection(gcc编译器)官方下载-太平洋下载中心...
- struts2拦截器实现登录限制
- 【Python】ID3算法的实现
- 西南大学计算机辅助设计试题,西南大学 1906 课程名称:(9123)《计算机辅助设计》机考 答案-奥...
- 知乎客户端跨平台 Hybrid 调试实战
- 耳朵大寿命长 由耳可辨疾病
- 手机屏幕按键测试软件,涨见识了——手机居然能作为维修检测工具来用!
热门文章
- Android打地鼠游戏案例
- 成绩出来了!700 分也上不了清华,究竟该如何从内卷中走出来!肺腑之言,建议转发给亲戚朋友们!
- 阿里云认证有什么用?考哪个比较好?
- 金融类自定义View(三)--股票分时图(关于细节和实现思路)
- python期货基本面分析_期货盘面分析语言,我用python做期货
- ks检验正态分布结果_SPSS实现Shapiro-Wilk正态分布检验
- 2019年8月 华为鸿蒙,华为2019年开发者大会将于8月9日举行,期待鸿蒙吗?
- 很多人都对3dB带宽有一定误解
- Win10系统U盘启动盘制作详解
- 更改计算机复制快捷键,电脑复制粘贴快捷键,详细教您电脑怎么用键盘复制粘贴...