**(舊版):
– 開始開發 –
*****== 以上是公眾平台的配置,下面開始寫前端** *****=
1、新建html,基本結構寫好。
2、引入」這個js
3、寫js**:
wx.config();
4、繼續寫方法:
wx.ready(function
(), function
(res));
//手機藍芽狀態改變時觸發 (這是監聽事件的呼叫方法,注意,監聽事件都沒有引數)
wx.on('onwxdevicebluetoothstatechange',function
(res));
//裝置繫結狀態改變事件(解綁成功,繫結成功的瞬間,會觸發)
wx.on('onwxdevicebindstatechange',function
(res));
//裝置連線狀態改變
wx.on('onwxdevicestatechange',function
(res));
//接收到裝置傳來的資料
wx.on('onreceivedatafromwxdevice',function
(res)
//解碼後的資料:str
//坑:你們測試的時候,不要在這裡用alert(),頁面會卡死。自己把資訊輸出到頁面中檢視吧
//不要在這裡alert出來
});});
5、繼續寫方法:
wx.error(function
(res));
//掃瞄前請先監聽裝置掃瞄事件
wx.on('onscanwxdeviceresult',function
(res)
//開始掃瞄
wx.invoke("startscanwxdevice",,function
(res){});
//這裡填的引數是ble,也可以填bc,bc是經典藍芽,我們做的這個裝置不支援經典藍芽,所以直接填ble
//安卓系統不能同時支援ble和bc,這個後面詳細說一下
//執行此方法後,就開始一直不停的掃瞄,掃瞄到了裝置會觸發上面的監聽事件
//如果不想掃了,可以停止掃瞄
//然而經測試,這個方法並沒有什麼卵用
//你發現重新掃瞄根本什麼都掃不出來,即使你現在重新整理頁面,也掃不出任何東西
//解決方法:每次掃瞄前,先呼叫closewxdevicelib關閉裝置庫,再呼叫openwxdevicelib開啟裝置庫
//這樣就相當於重新初始化了一遍裝置庫,你現在再重新掃瞄,就可以掃瞄到裝置了。
wx.invoke("stopscanwxdevice",{},function
(res){});
7、繫結和解除繫結
//使用者繫結裝置
//1、先獲取操作憑證(type為1表示繫結,2表示解除繫結)
wx.invoke('getwxdeviceticket',,function(res)else
});//使用者解除繫結
//與上面的方法基本相同,只有type引數不同
wx.invoke('getwxdeviceticket',,function(res)else
});
8、向裝置傳送資料
wx.invoke('senddatatowxdevice', , function
(res)else
});//傳送的資料需要經過base64編碼
ios一切正常,但是填成3|1,你就發現安卓的ble藍芽呼叫「getwxdeviceinfos」(獲取裝置資訊),獲取不到!
如果使用者的手機是經典藍芽,你就寫乙個html頁面,搞個按鈕叫「刷成經典藍芽」,使用者可以自己去更新裝置屬性(就是授權那個地方,不是可以更新裝置屬性嗎,讓你們後台工程師寫個介面,使用者可以自己去把connect_protocol刷成1)
4、關於裝置向手機發資料:
裝置發的資料,裡面有兩個值,乙個代表包括包頭包尾的總長度,乙個代表除去包頭包尾的長度,必須與所發資料的實際情況相對應,html頁面中才能接收到。否則不報錯,但也接收不到。
5、繼續補充中
微信硬體藍芽開發各種坑不完全開發指南
寫於 2016 4 15 舊版 開始開發 以上是公眾平台的配置,下面開始寫前端 1 新建html,基本結構寫好。2 引入 這個js 3 寫js wx.config 4 繼續寫方法 wx.ready function function res 手機藍芽狀態改變時觸發 這是監聽事件的呼叫方法,注意,監聽...
微信硬體藍芽開發各種坑不全然開發指南
舊版 開始開發 3 點 開發人員工具 進去後找到 公眾平台測試帳號 自己依照步驟申請開通乙個。4 進入測試號管理頁面,就會得到 以上是公眾平台的配置,以下開始寫前端 1 新建html,基本結構寫好。2 引入 這個js 3 寫js wx.config 生成證書的方法js sdk文件中有,此處臨時省略 ...
記一次難忘的微信藍芽硬體入坑過程
但是最近客戶向我反饋,收不到硬體傳送的資訊了。這怎麼可能,伺服器都沒有變過,怎麼可能會出問題呢?但畢竟客戶就是上帝,這個問題得檢查一下啊,我懷著一顆忐忑的心,看了一下伺服器的 log 日誌。看到了這段日誌,更覺得奇怪,easywechat 的擴充套件包從來沒有公升級過,此版本 3.1。怎麼可能會出這...