1.JSライブラリを?qū)毪筏蓼?/strong>
?<script type='text/javascript' src='//res.wx.qq.com/open/js/jweixin-1.0.0.js'></script>
2.ページに構(gòu)成情報を挿入します
wx.config({ ????beta:?true,?//?開啟內(nèi)測接口調(diào)用,注入wx.invoke方法,非常重要!!必須有這個 ????debug:?true,//開啟調(diào)試接口,alert運(yùn)行結(jié)果 ????appId:?'',//必填,公眾號的唯一標(biāo)識, ????timestamp:?'',//必填,生成簽名的時間戳 ????nonceStr:?'',//必填,生成簽名的隨機(jī)串 ????signature:?'',//必填,簽名 ????jsApiList:?[]//要調(diào)用的js函數(shù),必須把函數(shù)名字寫入數(shù)組 });
ここで私のjsApiListは
jsApiList:?[ ????????????'openWXDeviceLib',//初始化設(shè)備庫(只支持藍(lán)牙設(shè)備) ????????????'closeWXDeviceLib',//關(guān)閉設(shè)備庫(只支持藍(lán)牙設(shè)備) ????????????'getWXDeviceInfos',//獲取設(shè)備信息(獲取當(dāng)前用戶已綁定的藍(lán)牙設(shè)備列表) ????????????'sendDataToWXDevice',//發(fā)送數(shù)據(jù)給設(shè)備 ????????????'startScanWXDevice',//掃描設(shè)備(獲取周圍所有的設(shè)備列表,無論綁定還是未被綁定的設(shè)備都會掃描到) ????????????'stopScanWXDevice',//停止掃描設(shè)備 ????????????'connectWXDevice',//連接設(shè)備 ????????????'disconnectWXDevice',//斷開設(shè)備連接 ????????????'getWXDeviceTicket',//獲取操作憑證 ????????????'onWXDeviceBindStateChange',//微信客戶端設(shè)備綁定狀態(tài)被改變時觸發(fā)此事件 ????????????'onWXDeviceStateChange',//監(jiān)聽連接狀態(tài),可以監(jiān)聽連接中、連接上、連接斷開 ????????????'onReceiveDataFromWXDevice',//接收到來自設(shè)備的數(shù)據(jù)時觸發(fā) ????????????'onScanWXDeviceResult',//掃描到某個設(shè)備時觸發(fā) ????????????'onWXDeviceBluetoothStateChange',//手機(jī)藍(lán)牙打開或關(guān)閉時觸發(fā) ????????]です
WeChatのバージョンがこれらのAPIをサポートしているかどうかをテストしたい場合は、次のように書くことができます:
?wx.checkJsApi({ ????jsApiList:?['openWXDeviceLib',?'onScanWXDevicesResult',?'getWXDeviceInfos'],?//?需要檢測的JS接口列表,所有JS接口列表見附錄2, ????success:?function?(res)?{ ????????console.log(res); ????} });
3. デバイスライブラリ関數(shù)を初期化します
準(zhǔn)備が整ったインターフェイスを通じて成功した検証を処理します
wx.ready(function?()?{?????????? ????wx.invoke('openWXDeviceLib',?{connType:?'blue'},?function?(res)?{ ????????console.debug('openWXDeviceLib重新打開設(shè)備庫==>'); ????????console.log(res); ????}); })
落とし穴: デバイスを再スキャンしても何も見つかりません。ページを更新しても無駄です
解決策: 毎回スキャンする前に、まず closeWXDeviceLib を呼び出してデバイス ライブラリを閉じ、次に openWXDeviceLib を呼び出してデバイス ライブラリを開きます。これは、デバイス ライブラリを再初期化することに相當(dāng)します。ここで再度スキャンすると、デバイスをスキャンできます。
コード:
wx.invoke("stopScanWXDevice",?{},?function?(res)?{ ????console.debug('stopScanWXDevice'); ????console.log(res); ?}); wx.invoke("closeWXDeviceLib",?{},?function?(res)?{ ????console.debug('closeWXDeviceLib關(guān)閉設(shè)備庫==>'); ????console.log(res); }); wx.invoke('openWXDeviceLib',?{connType:?'blue'},?function?(res)?{ ????console.debug('openWXDeviceLib重新打開設(shè)備庫==>'); ????console.log(res); });
4. デバイスから返された情報をリッスンします
wx.on('onReceiveDataFromWXDevice',?function?(res)?{ ????console.warn('onReceiveDataFromWXDevice=>'); ????console.log(JSON.stringify(res)); });
5. デバイスにメッセージを送信します
データを送受信する前に、Base64 のエンコードとデコードが必要です。
ここでは、ライブラリを使用します:
????<script type='text/javascript' src='base64.js'></script>
出典:
http://www.miracleart.cn/
var?data={"deviceId":deviceId,"base64Data":?Base64.encode('你要發(fā)送的數(shù)據(jù)')}; console.log(data); wx.invoke('sendDataToWXDevice',data?,?function(res){ ????//回調(diào) ????console.info('發(fā)消息到設(shè)備sendMsg'); ????console.log(data); ????console.log(res); ????$('#dataFromDevice').append('發(fā)送消息的結(jié)果:'+JSON.stringify(res)); ????alert('已發(fā)送?請查看控制板'); });
手順:
1. 対応する API を使用するには、対応する WeChat デバイス アカウントにいる必要があります。
2. API は通常、デバイス番號で設(shè)定された安全なドメイン名で使用する必要があります
3. この記事の console.log およびその他のコンソールへの出力は、vconsole デバッグ ツールを使用して実裝されています。
1.JSライブラリを?qū)毪筏蓼?/strong>
?<script type='text/javascript' src='//res.wx.qq.com/open/js/jweixin-1.0.0.js'></script>
2.ページに構(gòu)成情報を挿入します
wx.config({ ????beta:?true,?//?開啟內(nèi)測接口調(diào)用,注入wx.invoke方法,非常重要!!必須有這個 ????debug:?true,//開啟調(diào)試接口,alert運(yùn)行結(jié)果 ????appId:?'',//必填,公眾號的唯一標(biāo)識, ????timestamp:?'',//必填,生成簽名的時間戳 ????nonceStr:?'',//必填,生成簽名的隨機(jī)串 ????signature:?'',//必填,簽名 ????jsApiList:?[]//要調(diào)用的js函數(shù),必須把函數(shù)名字寫入數(shù)組 });
ここで私のjsApiListは
jsApiList:?[ ????????????'openWXDeviceLib',//初始化設(shè)備庫(只支持藍(lán)牙設(shè)備) ????????????'closeWXDeviceLib',//關(guān)閉設(shè)備庫(只支持藍(lán)牙設(shè)備) ????????????'getWXDeviceInfos',//獲取設(shè)備信息(獲取當(dāng)前用戶已綁定的藍(lán)牙設(shè)備列表) ????????????'sendDataToWXDevice',//發(fā)送數(shù)據(jù)給設(shè)備 ????????????'startScanWXDevice',//掃描設(shè)備(獲取周圍所有的設(shè)備列表,無論綁定還是未被綁定的設(shè)備都會掃描到) ????????????'stopScanWXDevice',//停止掃描設(shè)備 ????????????'connectWXDevice',//連接設(shè)備 ????????????'disconnectWXDevice',//斷開設(shè)備連接 ????????????'getWXDeviceTicket',//獲取操作憑證 ????????????'onWXDeviceBindStateChange',//微信客戶端設(shè)備綁定狀態(tài)被改變時觸發(fā)此事件 ????????????'onWXDeviceStateChange',//監(jiān)聽連接狀態(tài),可以監(jiān)聽連接中、連接上、連接斷開 ????????????'onReceiveDataFromWXDevice',//接收到來自設(shè)備的數(shù)據(jù)時觸發(fā) ????????????'onScanWXDeviceResult',//掃描到某個設(shè)備時觸發(fā) ????????????'onWXDeviceBluetoothStateChange',//手機(jī)藍(lán)牙打開或關(guān)閉時觸發(fā) ????????]です
WeChatのバージョンがこれらのAPIをサポートしているかどうかをテストしたい場合は、次のように記述できます:
?wx.checkJsApi({ ????jsApiList:?['openWXDeviceLib',?'onScanWXDevicesResult',?'getWXDeviceInfos'],?//?需要檢測的JS接口列表,所有JS接口列表見附錄2, ????success:?function?(res)?{ ????????console.log(res); ????} });
3. デバイスライブラリ関數(shù)を初期化します
準(zhǔn)備ができたインターフェイスを通じて成功した検証を処理します
wx.ready(function?()?{?????????? ????wx.invoke('openWXDeviceLib',?{connType:?'blue'},?function?(res)?{ ????????console.debug('openWXDeviceLib重新打開設(shè)備庫==>'); ????????console.log(res); ????}); })
落とし穴: デバイスを再スキャンしても何も見つからず、ページを更新しても無駄です
解決策: 各スキャンの前に、closeWXDeviceLib を呼び出してデバイス ライブラリを閉じてから、openWXDeviceLib を呼び出してデバイス ライブラリを開きます。これは、デバイス ライブラリを再初期化することに相當(dāng)します。ここで再度スキャンすると、デバイスをスキャンできます。
コード:
wx.invoke("stopScanWXDevice",?{},?function?(res)?{ ????console.debug('stopScanWXDevice'); ????console.log(res); ?}); wx.invoke("closeWXDeviceLib",?{},?function?(res)?{ ????console.debug('closeWXDeviceLib關(guān)閉設(shè)備庫==>'); ????console.log(res); }); wx.invoke('openWXDeviceLib',?{connType:?'blue'},?function?(res)?{ ????console.debug('openWXDeviceLib重新打開設(shè)備庫==>'); ????console.log(res); });
4. デバイスから返された情報をリッスンします
wx.on('onReceiveDataFromWXDevice',?function?(res)?{ ????console.warn('onReceiveDataFromWXDevice=>'); ????console.log(JSON.stringify(res)); });
5. デバイスにメッセージを送信します
データを送受信する前に、Base64 のエンコードとデコードが必要です。
ここでは、ライブラリを使用します:
????<script type='text/javascript' src='base64.js'></script>
出典:
http://www.miracleart.cn/
var?data={"deviceId":deviceId,"base64Data":?Base64.encode('你要發(fā)送的數(shù)據(jù)')}; console.log(data); wx.invoke('sendDataToWXDevice',data?,?function(res){ ????//回調(diào) ????console.info('發(fā)消息到設(shè)備sendMsg'); ????console.log(data); ????console.log(res); ????$('#dataFromDevice').append('發(fā)送消息的結(jié)果:'+JSON.stringify(res)); ????alert('已發(fā)送?請查看控制板'); });
手順:
1. 対応する API を使用するには、対応する WeChat デバイス アカウントにいる必要があります。
2. API は通常、デバイス番號で設(shè)定された安全なドメイン名で使用する必要があります
3. この記事の console.log およびその他のコンソールへの出力は、vconsole デバッグ ツールを使用して実裝されています。
WeChat ハードウェア JS-Api 開発不完全ガイドに関連するその他の記事については、PHP 中國語 Web サイトに注目してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)