nrf51822微信开发2:[转]airkiss/airsync介绍
"微信蓝牙"专题共分为8部分
1.airkiss/airsync介绍
2.eclipes的j2ee软件使用教程
3.微信公众号使用Dome(airkiss/airsync)
4.新浪云服务器搭建(airkiss/airsync)
5.蓝牙nrf51822开发板(airkiss/airsync)
6.蓝牙nrf51822开发环境(airkiss/airsync)
7. 蓝牙nrf51822固件编译(airkiss/airsync)
8.蓝牙产品应用方案(airkiss/airsync)
一:airkiss/airsync介绍
微信硬件平台http://iot.weixin.qq.com/有着详细的介绍airkis/airsync是什么,
但内容非常多,这里我们会最通俗易通的方式来讲讲,与airkis/airsync不相关的我们就不再讲了。
airkiss/airsync提供一个微信物联网方案,
airkiss:是让wifi硬件无须ap就可以设置连入互联网。
airsync:微信蓝牙,无须开发app,进入公众号自动绑定蓝牙硬件。

我们下面以做一个微信智能开关为例,分析一下是如何实现的?
、微信公众帐号申请。
https://mp.weixin.qq.com/在这里注册申请认证,做硬件最好用服务号。

但我们测试是可以不用申请的,直接在这里就可以获取账号appID、appsecret。
测试申请网址:http://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index

、微信公众账号开发http://mp.weixin.qq.com/wiki/10/0234e39a2025342c17a7d23595c6b40a.html 这里的开发,如:别人关注公众微信号后,就会出现菜单呀,回复什么发送某个功能给用户的。可以使用php、jsp等,主要就是按照SDK进行POST、GET相关功能的API实现。微信提供模拟API的实现:http://mp.weixin.qq.com/debug/

、云端服务器
我们建一个云端服务器,自己搭建就要自己写jsp或php等,好处完全是自己的。
也可以用别人的云端,如:微信硬件云端、机智云等第三方平台,主要就是根据他们的协议连入就可以了。

、微信和开关互发送数据
http://iot.weixin.qq.com/wiki/new/index.html
这时也用SDK,但要调用硬件相关的API,如:绑定硬件api,发送数据api、接收数据api等等
这样就是所说的微信控制开关啦。

、jssdk的补充说明
微信充计我们使用js调用,实现控制硬件,那么就是说,我们自己建一个网页,然后调用js调用jssdk就可以实现了。
这个就好玩了,可以自己设计页面,爱怎么整怎么整,品牌,美观等等。
、可以使用我们知道的单片机,刷入airkis/airsyn协议的源代码编译成的固件。
如:AR9331(703n)、ESP8266(十几元的wifi模块)、CC254x(蓝牙)、nrf51822(性价比蓝牙)
这些单片机,做创客的都听说过吧,就用他们刷刷刷就可以。


、固件里会有设置设备ID的址方,并要在(公众账号)生成一个硬件二维码(和设备ID是一一对应)。
用户拿出微信扫描这个二维码,就可以绑定这个开关,然后就可以控制了。

我产生的疑惑:
1.微信服务号和测试的区别?
服务号要有申请时间,大约2个工作日
2.接口配置信息,怎么填?

申请新浪云之后填写!
3.一定要使用新浪云吗?
微信硬件云平台:https://iot.weixin.qq.com/wiki/new/index.html?page=3-3(设备直连微信硬件云的接入流程)
新浪云平台服务器:……
1.1微信硬件云平台使用
微信硬件云接入流程

1.在微信公众号内添加设备功能:
不论是我的服务号还是公众号。最后都是没有"设备功能"这个选项!也许微信取消了这部分的开发吧!
教程:

实际:

二:eclipes的j2ee软件使用教程
eclipse的j2ee软件通常用来开发java web项目(通过这个教程,你可能又会一门语言,牛B),
eslipse简单介绍:
Eclipse是一个开放源代码的、基于Java的可扩展开发平台,他本身而言,他只是一个框架和服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。
由于微信硬件开发者中心的DEMO用java来编写,我们在这里也教教大家如何使用j2ee来编写web项目
位则运行x64,32位的电脑运行x86的版本。
然后一直下一步,直到安装成功。
设置系统变量:
win7:右击我的电脑-》属性-》高级系统设置-》环境变量,新建-》JAVA_HOME,
内容为安装的java目录,如:C:\Program Files\Java\jdk1.7.0_20(这里要是你的安装目录)
然后找到Path,在后面一定是最后面添加;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
这样就可以运行了,运行会出现一个select workspace(选择项目目录,一般默认确认就好)
运行欢迎页,安装eclipse j2ee成功了!
三、建一个web网站。
点击File-》New->Dynamic Web Project
然后写一个项目名称,然后一直Next。
直到这步时,记得打勾Generate web.xml deployment descriptor,然后再完成Finish。
关闭欢迎页,然后点击test1就看到了项目结构如上图,WebContent是文件目录,Java Resources是包类目录。
点击展开WebContent,右击WebContent->New->JSP File新建一个jsp文件。
然后取名为index.jsp,通常所说的首页。
生成了一个jsp文件,在<body>里面,输入一个hello,为了在网站首页上显示出来。
四、设置tomcat服务器。
首页打开tomcat的配置页面,重复操作File-》New->Dynamic Web Project,然后点击New Runtime,选择Apache Tomcat v7.0,再点击Next。
填写tomcat7的文件目录,这是之前解压目录里有的哦,位于eclipse-jee-mars-1-win32-x86_64\tomcat7,选择tomcat7目录,点击Finish。
再把当前页面关闭,这时要运行test1项目了。
右击test1-》Run As-》Run On Server。
然后选择tomcat7,直接点击Finish,如果点击Next则让你选择要运行的项目,默认当前项目。

[Java] 纯文本查看 复制代码



在console里会输出红红的字,如果类式于上面的字,说明运行成功了,并会出现test1项目的首页,网页输出了hello。
这样就做成了一个网站,生成war,上传到服务器,就可以运行了。
关于java web代码开发,这个之后我们借助于微信的DEMO给大家做个实战型的教程。
五、运行微信硬件开发者官方的DEMO。
下载网址:http://iot.weixin.qq.com/wiki/new/index.html?page=6-1
打开网址,找到Nordic nRF51822接入服务器端源代码,下载下来解压。
点击File-》Import。
选择:Existiong Projects into Workspace,再点击Next。
点击Browse,选择解压的DEMO文件,或是直接复制路径到输入框,点确定。
这时会看到一个blulight的项目,选择它,Finish。
那微信DEMO项目打开了。
点击打开Java Resources-》src,会看到很多包类,这就是的源代码的地方。
右击bluelight项目-》Run As-》Run On Server。
微信Demo运行成功,下篇我们会对Demo项目进行分析,讲解和修改部分代码。
提前了解可以先看这一篇,微信做的说明文档。http://iot.weixin.qq.com/wiki/doc/blue/%E5%BE%AE%E4%BF%A1%E7%A1%AC%E4%BB%B6%E5%B9%B3%E5%8F%B0%E8%93%9D%E7%89%99demo%E6%9C%8D%E5%8A%A1%E7%AB%AF%E6%95%99%E7%A8%8B.pdf
补充说明:
QQ和微信都关停了物联网项目!

nrf51822微信开发2:[转]airkiss/airsync介绍的更多相关文章
- nrf51822微信开发入门学习笔记1:开始前的准备
参考:(id:love--baby)https://blog.csdn.net/hunhun1122/article/details/68922493 微信硬件平台:https://iot.weixi ...
- 微信开发新增拖动组件--movableview介绍
小程序的更新中,也新增了一个UI组件,它就是视图组件movable-view,它需要配合movable-area来一起使用.简单来说,它就是一个支持在指定区域内可以拖动内容的容器.我们来看一个简单的示 ...
- C#开发微信门户及应用(11)--微信菜单的多种表现方式介绍
在前面一系列文章中,我们可以看到微信自定义菜单的重要性,可以说微信公众号账号中,菜单是用户的第一印象,我们要规划好这些菜单的内容,布局等信息.根据微信菜单的定义,我们可以看到,一般菜单主要分为两种,一 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_1-1.SpringBoot整合微信支付开发在线教育视频站点介绍
笔记 第一章项目介绍和前期准备 1.SpringBoot整合微信支付开发在线教育视频站点介绍 简介: 课程介绍,和小D课堂在线教育项目搭建开发 1.课程大纲介绍 2.微信支付项 ...
- 夺命雷公狗---微信开发55----微信js-sdk接口开发(2)接口功能介绍之签名算法
我们JS-SDK里面其实有不少的接口 startRecord---录音 stopRecord---停止录音 playVoice---播放 pauseVoice---暂停播放 uploadImage-- ...
- 续关于C#的微信开发的入门记录一
前几天写了一篇博客<关于C#的微信开发的入门记录一>,原文地址:http://www.cnblogs.com/zhankui/p/4515905.html,现在继续完善: 目前很多小伙伴都 ...
- 关于C#的微信开发的入门记录一
在之前老是看到一些微信开发的例子,但是作为初学者会有很多问题,之前我也找了很多帖子,但是最终也没能解决,现在刚好手里有一个项目,总结一下分享给准备做却动不了手的朋友们,本文只是以我个人的经验作为浅谈( ...
- iOS开发UI篇—UITabBarController简单介绍
iOS开发UI篇—UITabBarController简单介绍 一.简单介绍 UITabBarController和UINavigationController类似,UITabBarControlle ...
- 微信开发系列----02:实现POST请求响应
继续昨天的,现在我们的微信测试成功了,可以开发实现微信的各种功能,今天主要实现微信的简单交互,比如发送语音,图片,文本等请求,网站服务器发送对应的响应. 项目GitHub地址: https://gi ...
随机推荐
- Qconf安装文档
1.操作系统配置(以root用户执行) 1)安装编译工具 cmake(已经安装过可以跳过) yum install -y cmake 2.安装Qconf 1)下载安装源码 wget http://10 ...
- Prime Count 求大区间素数个数
http://acm.gdufe.edu.cn/Problem/read/id/1333 https://www.zhihu.com/question/29580448/answer/44874605
- c# Redis操作类
需要添加StackExchange.Redis.dll引用 using System; using System.Collections.Generic; using System.IO; using ...
- zuul 自定义路由映射规则
zuul本射自动创建eureka中的服务的路由
- 解释器模式和php实现
解释器模式: 给定一个语言, 定义它的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中的句子. 角色: 环境角色:定义解释规则的全局信息. 抽象解释器::定义了部分解释具体实现,封装了 ...
- SDOI 2018二轮题解(除Day2T1)
博主诈尸啦 虽然一轮之后就退役了但是二轮还是要去划划水呀~ 然鹅学了不到一个月文化课再回来看OI的东西有一种恍如隔世的感觉,烤前感觉也没啥可复习的,就补一补去年二轮的题吧. 题目思路基本都参考自sha ...
- python3操作excel02(对excel的基础操作,进行简单的封装)3
#!/usr/bin/env python# -*- coding:UTF-8 -*- import requestsfrom bs4 import BeautifulSoupfrom bs4 imp ...
- Android商城开发系列(三)——使用Fragment+RadioButton实现商城底部导航栏
在商城第一篇的开篇当中,我们看到商城的效果图里面有一个底部导航栏效果,如下图所示: 今天我们就来实现商城底部导航栏,最终效果图如下所示: 那么这种效果是如何实现,实现的方式有很多种,最常见的就是使 ...
- ProtoBuff3 unity_TCP网络发包解包&&消息订阅
using Google.Protobuf; //using Google.Protobuf.Examples.AddPerson; using Google.Protobuf.WellKnownTy ...
- Codeforces Round #321 (Div. 2) B. Kefa and Company (尺取)
排序以后枚举尾部.尺取,头部单调,维护一下就好. 排序O(nlogn),枚举O(n) #include<bits/stdc++.h> using namespace std; typede ...