您的位置:首页 > 移动开发 > 微信开发

微信硬件平台蓝牙设备开发(一)

2016-11-11 11:03 246 查看

微信硬件平台蓝牙设备开发——接入

需求:用户关注微信公众号(服务号)后可控制特定蓝牙硬件设备。实现方案:通过微信硬件平台提供的硬件JSAPI来实现蓝牙设备与微信之间的互联和通讯,框架如下图,核心为:开发H5页面,链入公众号菜单内。1、申请公众号 开发测试号已经可以使用JSAPI,前期可使用测试号进行开发调试,本文主要以测试号示例。测试帐号申请:http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login公众号申请(服务号): https://mp.weixin.qq.com 2、开通设备功能、添加产品公众平台,点击左边功能栏的"添加功能插件",选择"设备功能"。 测试号在“功能服务”→设备功能中打开。添加产品中设置选择“蓝牙”、“蓝牙发现”。3.配置服务器在接口配置信息填写服务器地址(URL)、Token 。Token可由任意填写,用作生成签名,URL需要处理微信服务器将发送的GET请求,需要部署到服务器。接入指南:http://mp.weixin.qq.com/wiki/8/f9a0b8382e0b77d87b3bcc1ce6fbc104.html#4、设备授权硬件需先在微信平台授权后才可接入。授权接口如下http请求方式: POST https://api.weixin.qq.com/device/authorize_device?access_token=ACCESS_TOKEN
String deviceId = "gh_248e6ca70bbb_5aab93a29ec0xxxx";
String mac = "000E0B10xxxx";// 设备mac地址
String params = "{\"device_num\":\"1\",\"device_list\":[{"
+ "\"id\":\"" + deviceId + "\"," + "\"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\":\"1\"" + "}";
String s = DeviceUtil.sendPost(
"https://api.weixin.qq.com/device/authorize_device?access_token="
+ at.getToken(), params);
参数获取:
device_id由公众平台生成,是设备的唯一标识,且与二维码(qrticket字段)存在对应关系。
获取deviceid和设备二维码方式:
http请求方式: GET
https://api.weixin.qq.com/device/getqrcode?access_token=ACCESS_TOKEN&product_id=PRODUCT_ID
product_id为设备的产品编号(由微信硬件平台分配)。可在公众号设备功能管理页面查询。如下图。access_token是公众号的全局唯一票据,公众号调用各接口时都需使用access_token。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。故需要在服务端进行缓存,定时刷新。https://mp.weixin.qq.com/wiki/14/9f9c82c1af308e3b14ba9b973f99a8ba.htmlhttp请求方式: GET
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
完成以上步骤即可编写html控制页面。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  微信 硬件 蓝牙