?? 微信小程序的藍牙流程按著官網(wǎng)的說明寫就可以了,具體參看文檔:小程序開發(fā)文檔
坑列表:
??? 1.成對調(diào)用需要注意,wx.openBluetoothAdapter與wx.closeBluetoothAdapter
??????????????????????????????????????? wx.startBluetoothDevicesDiscovery與wx.stopBluetoothDevicesDiscovery
???? 2.安卓與IOS的區(qū)別:安卓可以根據(jù)藍牙標(biāo)識直接連接,IOS則必須先搜索才能進行連接;
???? 3.權(quán)限問題:IOS的系統(tǒng)不能僅僅打開系統(tǒng)的藍牙權(quán)限,因為IOS新版本針對藍牙做了應(yīng)用及的限制,因此需要給微信藍牙權(quán)限才可以使用;對于安卓系統(tǒng),部分手機必須打開定位權(quán)限才能搜索到藍牙設(shè)備
???? 4.創(chuàng)建連接API(wx.createBLEConnection)調(diào)用失敗:
??????????? 超時報錯:{"errCode":10012,"errMsg":"createBLEConnection:fail:operate time out"}
??????????? 連接超時:{"errCode":10003,"errMsg":"createBLEConnection:fail connect time out."}
??????????? 連接失敗:{"errCode":10003,"errMsg":"createBLEConnection:fail:connection fail status:133"}
?????????? 基本都是安卓手機出現(xiàn)以上問題,針對這些報錯,需編寫重試連接操作,很大概率能解決此問題;
???? 5.搜索不到任何設(shè)備,安卓手機可能是定位權(quán)限的問題造成,蘋果手機基本就是設(shè)備出問題了
???? 6.網(wǎng)絡(luò)請求與藍牙請求盡量分開,因為藍牙連接會受到影響,造成一些異常信息;
???? 7.所有API調(diào)用針對fail函數(shù)最好都做一次重試,因為再次重試可能就會成功;、
???? 8.API調(diào)用之間最好有一定毫秒數(shù)的間隔,目前懷疑api部分機型會存在延時;
總之微信的藍牙連接就那些已知的接口,調(diào)用時多考慮異常的情況下的重試,簡單總結(jié)下,以便查閱。
???????????
????