从零開始搭建微信硬件开发环境全过程——1小时掌握微信硬件开发流程

笔者决定在嵌入式企鹅圈2016年的首篇文章中,发表微信硬件物联领域极具实践价值的文章,它将能指引和帮助不论什么有兴趣于物联网开发的童鞋们高速掌握微信硬件开发流程。仅仅需一个小时。而再不须要通过揣摩微信硬件浩瀚的文档资料来完毕艰难构建。

笔者之前以前撰写过一篇文章《基于微信硬件公众平台的智能控制开发流程》介绍微信硬件开发的流程,但该篇文章是理论性的描写叙述。而本篇文章是全然可操作实践的,请结合两篇文章理解。技术咨询请发邮件至[email protected]

本篇文章的目的是高速搭建微信硬件开发的环境,完毕微信硬件物联Demo。

直接上图,傻瓜式教程!

1.???申请微信硬件測试公众号

链接:

t=sandbox/login">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)??自己定义菜单,定义两个按钮

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" />

自己定义菜单的效果例如以下:假设用户关注了该公众号,则进入该公众号后会看究竟部有开灯和关灯两个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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" />

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的通信设备配置

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" />

临时不使用数据库,能够将全部的数据库操作凝视掉,并直接硬编码。

deviceType即是第1步里面的微信号

deviceID即是设备授权时的deviceID

openID是绑定这个设备的用户的手机微信ID。如昵称为O的微信ID。

11.实现Airsync协议的微信蓝牙开发板上电。開始广播。

12.微信昵称为O的用户打开订阅的微信測试公众号,開始自己主动扫描并连接微信蓝牙开发板。

13.公众号连上微信蓝牙开发板后,即能够发开灯和关灯指令,对微信蓝牙开发板进行控制。

假设想要以上安装程序和代码敬请关注嵌入式企鹅圈。并发消息给嵌入式企鹅圈获取资讯。

笔者前天受邀请到深圳參加CSDN优秀专家年底party,分享一下活动合影。

很多其它嵌入式Linux和物联网原创技术分享敬请关注微信公众号:嵌入式企鹅圈

原文地址:https://www.cnblogs.com/llguanli/p/8889465.html

时间: 2024-09-30 19:56:37

从零開始搭建微信硬件开发环境全过程——1小时掌握微信硬件开发流程的相关文章

从零开始搭建微信硬件开发环境全过程——1小时掌握微信硬件开发流程

笔者决定在嵌入式企鹅圈2016年的首篇文章中,发表微信硬件物联领域极具实践价值的文章,它将能指引和帮助任何有兴趣于物联网开发的童鞋们快速掌握微信硬件开发流程,只需一个小时,而再不需要通过揣摩微信硬件浩瀚的文档资料来完成艰难构建. 笔者之前曾经撰写过一篇文章<基于微信硬件公众平台的智能控制开发流程>介绍微信硬件开发的流程,但该篇文章是理论性的描述.而本篇文章是完全可操作实践的,请结合两篇文章理解.技术咨询请发邮件至[email protected] 本篇文章的目的是快速搭建微信硬件开发的环境,完

从零開始学Xamarin.Forms(二) 环境搭建、创建项目

一.环境搭建 Windows下环境搭建: 1.下载并安装jdk.Android SDK和NDK.当然还须要 VS2013 update 2(VS2010.VS2012均可)以上. a.  最新SDK. 下载地址:http://dl.google.com/android/android-sdk_r23-windows.zip b.  Android平台工具包(解压到SDK安装根文件夹下,产生文件夹platform-tools), 下载地址:https://dl-ssl.google.com/and

《PHP 5.5从零開始学(视频教学版)》内容简单介绍、文件夹

<PHP 5.5从零開始学(视频教学版)>当当网购买地址: http://product.dangdang.com/23586810.html <PHP 5.5从零開始学(视频教学版)>源码.教学视频下载地址: http://pan.baidu.com/s/1zt9hW 内 容 简 介 本书循序渐进地介绍了PHP 5.5开发动态站点的主要知识和技能,提供了大量的PHP应用实例供读者实践.每一章节都清晰讲述了代码作用及其编写思路,使读者能在最短时间内迅速掌握PHP的应用开发技能. 全

从零開始学Swift之Hello World进化版

上节课,也就是昨晚啦,我们学习到从零開始学Swift之Hello World.那一节仅仅有一句代码,大家会认为不够过瘾. 那么这节课,就给大家来多点瘾货吧! 先上图! //var 代表变量的类型, start 代表变量的名称. "Hello" 代表变量的值. var start = "Hello" var dot = " , " var end = "world!" // let 是什么意思呢? let total = sta

Spring 从零開始-01

因为学习需求,近期突然通知须要学习Spring.可是因为之前非常少使用Java.所以感觉还是有点慢,花了大约两周,弄懂了主要的结构也编了点小程序.还是万事开头难啊,网上总是非常难找到学习spring的指引资料.学习一个东西最主要的还是学习他的思想.还有就是一个可靠地学习建议,这东西会让你事半功倍,学习一定要依赖于书本,网上再好的资料都不如一本书.这个是本科+研究生的经验总结,spring学习能够參考<spring实战>,这本书写得非常精彩.可是就是须要有点高度,假设你从零開始那将会有一些困难,

快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是Windows,装虚拟机也麻烦,所以还不如30块钱 买个腾讯云,用putty远程练上去写代码呢. 我一直都是putty+VIM在Linux下开发代码,好几年了,只要把putty和VIM配置好,其实 开发效率挺高的. 买好腾讯云后,装个Centos,会分配个外网IP,然后买个域名,在DNSPod解析过去

站点搭建从零開始(二)server空间

前面介绍了域名相关知识.这里介绍server,也经常被叫做空间.也就是站点数据实际保存的地方. 1.整体介绍 依据国家相关规定,国内server空间须要进行备案.也就是到相关的机构进行登记.详细方法能够网上找.域名也有备案一说.国内域名不备案可能会被禁用. 国外的域名和server.一般就不须要备案了. 国外server的一大缺点是速度一般比国内server慢,有些甚至差点儿没有速度. (1)自己搭建server server事实上也就是配置比較高的电脑.装了适合做server的操作系统,安装了

站点搭建从零開始(五) WordPress的安装

前面说了非常多废话.如今最终转到正题.WordPress的安装. 1.WordPress安装非常easy 假设你的server能通过应用中心一键安装WordPress,这一节就非常轻松了,基本上不须要做什么.可是考虑到那种新手的方式,以后假设换了server可能就不能进行安装了.而且有些需求还是不能用那种方式实现,所以学一下也好(主要是配置数据库.FTP,然后上传文件.过程相当简单). 仅仅要server支持php而且配置了数据库和FTP,安装WordPress是非常easy的. 前面我们配置好

从零開始开发Android版2048 (二)获取手势信息

今天是尝试開始Android版2048小游戏的第二天.在今天,我主要学习了怎样获取用户在屏幕滑动的手势,以及对布局进行了一些小小的完好. 获取用户操作的手势(比方向左滑.向右滑等)主要用到了GestureDetector.这个类能够帮助我们获取一些常见的用户对屏幕的操作.比如单击.双击.按压.拖动等.详细的使用说明.大家能够查API也能够去百度,或者看我之前有一篇使用GestureDetector实现的小样例(http://blog.csdn.net/xiapinnong/article/det