收藏
回答

微信小程序蓝牙开锁遇到的问题

问题模块
API和组件

微信小程序开发ios链接蓝牙的的时候,获取的广播信息为null,将它base64之后依然不能与当前你设备的mac地址进行匹配(在众多的广播信息里边没有找到当前设备的mac地址),但是安卓就能找到。

最后一次编辑于  2017-08-16  (未经腾讯允许,不得转载)
邀请回答
复制链接收藏投诉关注问题回答

9 个回答

  • 王翊夫if
    王翊夫if
    2017-08-16

    1. arrayBuffer没法直接打印出来,是有对 advertisData调用了 arrayBufferToBase64 么?

    2. 另外需要注意的是,iOS上获取到的advertisData,前两个字节是companyId,如果不需要的话要对其进行切割。

    2017-08-16
    赞同
    回复
  • 菲戈
    菲戈
    2017-08-17

    调用了,并且我将当前设备的mac 地址进行转换与广播地址进行匹配的,然而安卓能就能找到这个广播内容,ios没有

    2017-08-17
    赞同
    回复
  • 王翊夫if
    王翊夫if
    2017-08-17

    你指的是这里的arrayBuff在iOS拿到为空么?有console.log出来的日志么?


    2017-08-17
    赞同
    回复
  • 菲戈
    菲戈
    2017-08-17

    官方api说的是不能打印,我转为base64在安卓上就能和当前设备的广播信息相匹配,但是ios却找不到这个广播信息,我在想是不是ios和安卓对advertisData的解析不一样

    2017-08-17
    赞同
    回复
  • 菲戈
    菲戈
    2017-08-17

    有没有一个方法让我今天能看到advertisData里边都有神马东西?我以前用ios连的时候advertisData直接就是mac地址,现在不是了

    2017-08-17
    赞同
    回复
  • 王翊夫if
    王翊夫if
    2017-08-17

    arrayBufferToBase64 这个方法转字符串后可以打印出来,主要ios却找不到这个广播信息 这句话是什么意思?字符串为空?


    “我以前用ios连的时候advertisData直接就是mac地址,现在不是了”   是指之前用相同代码测试可以取出mac地址?

    2017-08-17
    赞同
    回复
  • 王翊夫if
    王翊夫if
    2017-08-17

    我转过了,并且把设备的mac地址也转换了,安卓上边把mac地址转换之后和把广播信息转换之后能够匹配@NGK

    ====================================================

    iOS上是不能匹配,还是转换成base64的字符串为空?


    2017-08-17
    赞同
    回复
  • 菲戈
    菲戈
    2017-08-17

    要不留个联系方式,比如微信什么的加一下?我的微信号是:zlf1525283969

    2017-08-17
    赞同
    回复
  • 王翊夫if
    王翊夫if
    2017-08-17

    已经解决,开发者根据厂商提供的广播包数据段进行解析,将arrayBuffer转为16进制数据后成功获取到Mac地址。

    2017-08-17
    赞同
    回复