wx.getBluetoothDevices,獲取在小程序藍牙模塊生效
2017-12-11
導讀:基礎庫 1.1.0 開始支持,低版本需做 兼容處理 獲取在小程序藍牙模塊生效期間所有已發現的藍牙設備,包括已經和本機處于連接狀態的設備。 OBJECT參數說明: 參數 類型 必填 說明 suc...
基礎庫 1.1.0 開始支持,低版本需做兼容處理
獲取在小程序藍牙模塊生效期間所有已發現的藍牙設備,包括已經和本機處于連接狀態的設備。
OBJECT參數說明:
參數 | 類型 | 必填 | 說明 |
---|---|---|---|
success | Function | 是 | 成功則返回本機藍牙適配器狀態 |
fail | Function | 否 | 接口調用失敗的回調函數 |
complete | Function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
success返回參數:
參數 | 類型 | 說明 |
---|---|---|
devices | Array | uuid 對應的的已連接設備列表 |
errMsg | String | 成功:ok,錯誤:詳細信息 |
device 對象
藍牙設備信息
參數 | 類型 | 說明 |
---|---|---|
name | String | 藍牙設備名稱,某些設備可能沒有 |
deviceId | String | 用于區分設備的 id |
RSSI | Number | 當前藍牙設備的信號強度 |
advertisData | ArrayBuffer | 當前藍牙設備的廣播數據段中的ManufacturerData數據段 (注意:vConsole 無法打印出 ArrayBuffer 類型數據) |
advertisServiceUUIDs | Array | 當前藍牙設備的廣播數據段中的ServiceUUIDs數據段 |
localName | String | 當前藍牙設備的廣播數據段中的LocalName數據段 |
示例代碼:
// ArrayBuffer轉16進度字符串示例
function ab2hex(buffer) {
var hexArr = Array.prototype.map.call(
new Uint8Array(buffer),
function(bit) {
return ('00' + bit.toString(16)).slice(-2)
}
)
return hexArr.join('');
}
wx.getBluetoothDevices({
success: function (res) {
console.log(res)
if (res.devices[0]) {
console.log(ab2hex(res.devices[0].advertisData))
}
}
})
第二部分:如何開通一個小商店