摘要:這里,我用到一個庫出處你要發(fā)送的數(shù)據(jù)回調(diào)發(fā)消息到設備發(fā)送消息的結(jié)果已發(fā)送請查看控制板說明需要在微信對應設備號內(nèi)才能使用對應的。
1.引入JS庫
2.為頁面注入配置信息
wx.config({ beta: true, // 開啟內(nèi)測接口調(diào)用,注入wx.invoke方法,非常重要!!必須有這個 debug: true,//開啟調(diào)試接口,alert運行結(jié)果 appId: "",//必填,公眾號的唯一標識, timestamp: "",//必填,生成簽名的時間戳 nonceStr: "",//必填,生成簽名的隨機串 signature: "",//必填,簽名 jsApiList: []//要調(diào)用的js函數(shù),必須把函數(shù)名字寫入數(shù)組 });
這里我的jsApiList為
jsApiList: [ "openWXDeviceLib",//初始化設備庫(只支持藍牙設備) "closeWXDeviceLib",//關閉設備庫(只支持藍牙設備) "getWXDeviceInfos",//獲取設備信息(獲取當前用戶已綁定的藍牙設備列表) "sendDataToWXDevice",//發(fā)送數(shù)據(jù)給設備 "startScanWXDevice",//掃描設備(獲取周圍所有的設備列表,無論綁定還是未被綁定的設備都會掃描到) "stopScanWXDevice",//停止掃描設備 "connectWXDevice",//連接設備 "disconnectWXDevice",//斷開設備連接 "getWXDeviceTicket",//獲取操作憑證 "onWXDeviceBindStateChange",//微信客戶端設備綁定狀態(tài)被改變時觸發(fā)此事件 "onWXDeviceStateChange",//監(jiān)聽連接狀態(tài),可以監(jiān)聽連接中、連接上、連接斷開 "onReceiveDataFromWXDevice",//接收到來自設備的數(shù)據(jù)時觸發(fā) "onScanWXDeviceResult",//掃描到某個設備時觸發(fā) "onWXDeviceBluetoothStateChange",//手機藍牙打開或關閉時觸發(fā) ]
如果想要測一下微信版本是不是支持這幾個api,可以這樣寫:
wx.checkJsApi({ jsApiList: ["openWXDeviceLib", "onScanWXDevicesResult", "getWXDeviceInfos"], // 需要檢測的JS接口列表,所有JS接口列表見附錄2, success: function (res) { console.log(res); } });
3.初始化設備庫函數(shù)
通過ready接口處理成功驗證
wx.ready(function () { wx.invoke("openWXDeviceLib", {connType: "blue"}, function (res) { console.debug("openWXDeviceLib重新打開設備庫==>"); console.log(res); }); })
坑:重新掃描設備根本什么都掃不出來,即使是刷新頁面也不頂用
解決方法:每次掃描前,先調(diào)用closeWXDeviceLib關閉設備庫,再調(diào)用openWXDeviceLib打開設備庫。這樣就相當于重新初始化了一遍設備庫,你現(xiàn)在再重新掃描,就可以掃描到設備了。
代碼:
wx.invoke("stopScanWXDevice", {}, function (res) { console.debug("stopScanWXDevice"); console.log(res); }); wx.invoke("closeWXDeviceLib", {}, function (res) { console.debug("closeWXDeviceLib關閉設備庫==>"); console.log(res); }); wx.invoke("openWXDeviceLib", {connType: "blue"}, function (res) { console.debug("openWXDeviceLib重新打開設備庫==>"); console.log(res); });
4.監(jiān)聽設備返回的信息
wx.on("onReceiveDataFromWXDevice", function (res) { console.warn("onReceiveDataFromWXDevice=>"); console.log(JSON.stringify(res)); });
5.發(fā)送消息到設備
收發(fā)數(shù)據(jù)前需進行 base64 的編解碼。
這里,我用到一個庫:
出處:
https://github.com/dankogai/j...
var data={"deviceId":deviceId,"base64Data": Base64.encode("你要發(fā)送的數(shù)據(jù)")}; console.log(data); wx.invoke("sendDataToWXDevice",data , function(res){ //回調(diào) console.info("發(fā)消息到設備sendMsg"); console.log(data); console.log(res); $("#dataFromDevice").append("發(fā)送消息的結(jié)果:"+JSON.stringify(res)); alert("已發(fā)送 請查看控制板"); });
說明:
1.需要在微信對應設備號內(nèi)才能使用對應的api。
2.必須要在設備號設置的安全域名下才能正常使用api
3.本篇內(nèi)所有的console.log 等輸出到控制臺 都是用的vconsole調(diào)試工具實現(xiàn)。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/22326.html
摘要:這里,我用到一個庫出處你要發(fā)送的數(shù)據(jù)回調(diào)發(fā)消息到設備發(fā)送消息的結(jié)果已發(fā)送請查看控制板說明需要在微信對應設備號內(nèi)才能使用對應的。 1.引入JS庫 2.為頁面注入配置信息 wx.config({ beta: true, // 開啟內(nèi)測接口調(diào)用,注入wx.invoke方法,非常重要!!必須有這個 debug: true,//開啟調(diào)試接口,alert運行結(jié)果 app...
摘要:通過書籍學習,比如除了上述的先學知識,你還應該了解一些流行的深度學習庫和運行他們的語言。你也可以查看查看的中的第講,概要性的了解一些深度學習庫。 作者:chen_h微信號 & QQ:862251340微信公眾號:coderpai簡書地址:https://www.jianshu.com/p/cd0... 原文:https://www.analyticsvidhya.c... 介紹 ...
閱讀 2551·2021-11-16 11:45
閱讀 2536·2021-10-11 10:59
閱讀 2328·2021-10-08 10:05
閱讀 3993·2021-09-23 11:30
閱讀 2435·2021-09-07 09:58
閱讀 942·2019-08-30 15:55
閱讀 828·2019-08-30 15:53
閱讀 1983·2019-08-29 17:00