WeChat アプレット Bluetooth デバイス コードとエラーの並べ替え

小云云
リリース: 2018-02-03 14:58:14
オリジナル
5163 人が閲覧しました

WeChat アプレットは全体的に非常に優れています。Bluetooth インターフェイスは確かに「穴」です。この記事では、主に WeChat アプレットの Bluetooth デバイス コードとエラーの分類を説明します。皆さんのお役に立てれば幸いです。

いくつかの問題

多くの Bluetooth デバイスが電話を妨害する可能性があります。同社は 200 以上のデバイスをスキャンし、iPhone 5S の WeChat を直接妨害する可能性があります。

各ハードウェア操作の間に遅延を追加する必要があります。「Bluetooth をオンにする」と「スキャンを開始する」の間、「接続が成功した」と「サービスを取得する」の間など、100 ミリ秒を推奨します。遅延を使用しないと、不可解なエラーが発生する可能性があります。これは Android 側でよく発生します。

JS の非同期性と同時実行性の特性、特にポーリング サービスでの特性に注意してください。ミニ プログラムは、async と await をまだサポートしていません (これら 2 つのキーワードはコード補完に含まれていますが、コンパイルできません)。

Bluetooth データの読み取りと書き込み、データ型は ArrayBuffer です (アプレットを引用するときの注意: vConsole は ArrayBuffer 型のデータを出力できません)。皆さん、まずバイナリ配列と 16 進文字列について理解してください。コードには変換メソッドがあります (github からコピー)。

Bluetooth アダプターの初期化 (wx.openBluetoothAdapter(OBJECT)) とローカル Bluetooth アダプターのステータスの取得 (wx.getBluetoothAdapterState(OBJECT)) これら 2 つの関数のどちらを最初に呼び出すかはわかりません。以下の手順を参照してください。

いくつかのバグ

1. Bluetooth スキャン プロセス中に、ローカル Bluetooth アダプターのステータスを取得します (wx.getBluetoothAdapterState(OBJECT))。 (Android、Huawei Honor 8、VIVO 7plus、6.5.13 のみ)

availableBoolean Bluetooth アダプターが利用可能かどうか、値は true です。

discoveringBoolean デバイスが検出されているかどうか、値は false です。

https://github.com/FFiot/WX_Bluetooth/issues/1

2. Bluetooth スキャン プロセス中に、再度スキャンを開始します。wx.startBluetoothDevicesDiscovery(OBJECT): 失敗、errCode=10008。 (Android、Huawei Honor 8、VIVO 7plus、6.5.13 限定) バグ: Bluetooth スキャン中に Bluetooth ステータスをクエリする · 問題 #1 · FFiot/WX_Bluetoothgithub.com Bluetooth スキャン中に、再度スキャンを開始します。 wx.startBluetoothDevicesDiscovery(OBJECT): 失敗します。エラーコード=10008。 (Android のみ、Huawei Honor 8、VIVO 7plus、6.5.13)

https://github.com/FFiot/WX_Bluetooth/issues/2

errorCode が errMsg と混在しています。 (IOS、IPHONE5s、WeChat 6.5.15 限定)

https://github.com/FFiot/WX_Bluetooth/issues/3

3. Bluetooth がサービス中の文字をスキャンしている場合、複数のサービスがある場合、最初のサービスでキャラクターを取得し、他のサービスで取得したキャラクターは最初のサービスと同じです。 (IOS、IPHONE5s、WeChat 6.5.15 に固有)

モバイル デバイスで Bluetooth をオン/オフするには 2 つの状態があり、wx.onBluetoothAdapterStateChange コールバックをトリガーします

1、wx.getBluetoothAdapterState(OBJECT)

オフ状態は戻ります: drrCode: 10000、errMsg :"getBluetoothAdapterState:fail"。この時点で Bluetooth をオンにします。 wx.onBluetoothAdapterStateChange(CALLBACK) にはコールバックがありません。

オープンステータスは drrCode:10000,errMsg:"getBluetoothAdapterState:fail" を返します。この時点では Bluetooth をオフにします。 wx.onBluetoothAdapterStateChange(CALLBACK) にはコールバックがありません。

2. wx.getBluetoothAdapterState(OBJECT)

閉じられた状態は、drrCode: 10001、errMsg: "openBluetoothAdapter:fail" を返します。この時点で Bluetooth をオンにします。 wx.onBluetoothAdapterStateChange(CALLBACK) にはコールバックがあります。

オープンステータスは errMsg: "openBluetoothAdapter:ok" を返します。この時点で Bluetooth をオンにします。 wx.onBluetoothAdapterStateChange(CALLBACK) にはコールバックがあります。

関連する推奨事項:

Bluetooth リンクを実装する WeChat アプレットのコード

WeChat アプレットが Bluetooth を実装する方法の例の共有

WeChat アプレット - Ble Bluetooth

以上がWeChat アプレット Bluetooth デバイス コードとエラーの並べ替えの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!