美文网首页
iOS—蓝牙常见问题

iOS—蓝牙常见问题

作者: 羽之_HB | 来源:发表于2018-02-02 20:23 被阅读61次

    1 指定设备连接(扫码链接)

    解决方案:由于iOS是无法直接得到蓝牙的mac地址,因此我们需要硬件来告诉我们mac地址来区分蓝牙

    图-1

    这样我们结合扫码的地址就能准确连接

    2 蓝牙断开问题

    原因:    主设备主动断开的时候,断开代理会立刻执行,但是蓝牙并没有真的断开,而真正的断开时间是断开代理执行后的0-8秒之间

    解决方案:1.主设备给从设备发送消息,让从设备主动断开

                       2.立刻开启蓝牙搜索,当搜索到你要断开的设备时,说明蓝牙已断开(被链接的蓝牙是无法搜索到)

    3 蓝牙写入速率问题

            对于操控类蓝牙,数据写入要求非常快,其中writeWithSponce写入消耗的时间是writeWithoutSponce的2.3倍,因此尽量改写成writeWithoutSponce来提升写入速率

    4 数据写入延迟问题

            当数据写入和读取同时进行且速率过快的时候,并且读取超频的时候,写入数据就会出现指数性延迟

    5 蓝牙UI刷新问题

    原因:        我们再搜索设备的时候,一般都用tableIView来展示搜索到的蓝牙数据,但是由于搜到的蓝牙回调速率特别快,导致你cell插入刷新不过来,从而导致数据刷新异常的现象.

    解决方案:     不要每次搜索设备就立马刷新数据,而是在你添加了新的设备后开始开始刷新(蓝牙会被                        重复搜索),并且由于搜索频率很快,我们可以开启延迟刷新.比如说我们在搜到新数据后,通过代理回调到vc中,并在主线程中使用performSelector来延迟0.3秒刷新,并且在每次刷新之前,我们先取消之前未执行的UI延迟方法: cancelPreviousPerformRequestsWithTarget

    相关文章

      网友评论

          本文标题:iOS—蓝牙常见问题

          本文链接:https://www.haomeiwen.com/subject/vyzezxtx.html