• 微信硬件蓝牙


    调用微信jsapi完成公众号蓝牙蓝牙传输功能(测试版)

    一、第一阶段:首先要在微信测试号申请一个产品(得到产品的id号)

    二、 第二阶段:微信后台基本设置,需要通过在线接口调试去设置

    1. 回到微信主页,依次点击"开发者工具"进入“在线接口调试工具”(http://mp.weixin.qq.com/debug

       
       
      然后会看到这样的界面:
       
       
    2. 在“在线接口调试工具”页面按照如图所示填入自己在第一阶段的测试账号的appID和appsecret的内容(吐槽:一会儿又appID,这里又appid,上面appsecret这里secret,就不能规范一点吗?):


       
       

      并点击检查问题(吐槽:其实就是提交请求的设置,不知道为什么按钮名称会叫“检查问题”)。点击后倘若成功的话会在页面下面返回有如图所示的包含access_token的字段信息(若返回了error,请仔细检查appID和appsecret是否都写对了,这里要写测试账号的哦,因为我们第一阶段的设置都是设置的测试账号的):


       
       
      并记录下获取到的access_token值(吐槽:哈哈,笑死我了,access_token太长,显示超出他的样式表了,就不能自动换行显示吗?非要我鼠标拖动浏览器的左右滚动条才能看完)
    3. 向上滚动鼠标到这个界面,并填写如图所示内容,其中的access_token填写刚才获取到的那个字符串并在末尾加上&product_id=21816(注意,这个数字是在第一阶段的第7步所得到的那个,这里的21816是我自己的,需要填写自己对应的那个)。


       
       

      同样,点击“检查问题”,得到如下图所示的内容:


       
       
      注意记录下deviceid和qrticket的值(吐槽:已经受不了微信的命名规范问题了)。
    4. 向上滚动鼠标到这个界面,并填写如图所示内容,其中的access_token栏会自动根据你上次操作而自动填写上,这里可以把“&product_id=21816”这几个字符删除。若没有自动填写,那就手动填写一下步骤2获取到的access_token值吧。


       
       

      body填写的是一个json对象,目的是把你的蓝牙设备在微信后台进行注册,不然微信到时候是不会自动去连接你的蓝牙设备的。
      body内容及参数解释:

    { 
        "device_num": "1",  //这里填写注册设备的个数,必须和device_list中的
        "device_list": [        
         {
                "id": "gh_dd58c7bef8e7_b00fef105fd4269f", //填写步骤3获取到的deviceid
                "mac": "209148B74D40",    //填写你的设备的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"    
      }
    ],   
    "op_type": "0", //0表示新注册设备信息,1表示更新(修改)设备信息,当要修改的时候就写1。
    "product_id": "21543"//填写设备所属的产品id,就是第一阶段所添加的那个产品的product_id
    }
    

    然后点击“检查问题”,得到如下回复:


     
    QQ截图20160814115053.png

    倘若得到的回复是error alredy exist的失败字样,可以把op_type的值更改为“1”。若出现account quota not enough,请检查product_id是否填写正确。

    1. 进入百度搜索“在线二维码”,根据个人喜好选择一个二维码平台,制作二维码。这里选择的是“草料二维码”,如图:


       
      QQ截图20160814120212.png

      图中红色的url是步骤3获取到的qrticket。复制填入即可。然后点击“生成二维码”即可,然后图中右边的就是该设备的绑定二维码,用微信扫描,并点击“绑定设备”,然后点击“进入公众号”。这个时候在公众号(测试号)顶部标题栏会显示灰白色的“连接中”或“已连接1个设备”等相关信息(记得打开手机蓝牙和蓝牙外设)。

    三、第三阶段:调用微信jsapi进行数据传输(前两个都是准备阶段)

           

    wx.ready(function(){

    //初始化设备
    wx.invoke('openWXDeviceLib', {'brandUserName':'测试号的appid'}, function(res){});

    //连接蓝牙
    wx.invoke('connectWXDevice', {
    'deviceId' :
    设备的授权id(生成二维码时候一同出现的)
    ,
    'connType' : 'ble'
    }, function(res) {
    //alert(JSON.stringify(res));
    //向蓝牙发送命令
    wx.invoke(
    'sendDataToWXDevice',
    {
    'deviceId' : 设备的授权id(生成二维码时候一同出现的),
    'connType' : 'ble',
    'base64Data' : '要发送的数据'
    }, function(res) {
    var data=JSON.stringify(res);
    var json = eval("(" + data + ")");
    //alert(json.err_msg);
    if(json.err_msg=="sendDataToWXDevice:ok"){
    //接收到设备传来的数据
    wx.on('onReceiveDataFromWXDevice',function(res) {
    //alert(JSON.stringify(res));
    var data = JSON.stringify(res);
    var json = eval("(" + data + ")");

    alert(json.base64Data);
    });
    }else{
    alert("错误提示!");
    }
    });
    });

    //错误提示
    wx.error(function(res){
    alert("wx.error错误:"+JSON.stringify(res));
    //如果初始化出错了会调用此方法,没什么特别要注意的
    });

    });

  • 相关阅读:
    csp 通信网络
    从客户端(content="xxxxx")中检测到有潜在危险的 Request.Form 值——较合理解决方案
    HttpUtility.HtmlEncode 方法
    web程序防止攻击的一些资料——整理
    memcached——学习
    VS2015 无法启动IIS Express Web服务器
    文件上传——资料收集
    水晶报表-需要安装软件
    web安全漏洞相关
    javascript一个在网页上画线的库
  • 原文地址:https://www.cnblogs.com/blange/p/8072697.html
Copyright © 2020-2023  润新知