WeChat 애플릿은 전반적으로 매우 훌륭합니다. Bluetooth 인터페이스는 실제로 "네트워크 측"의 프로그래머가 "하드웨어 인터페이스"를 수행합니다. 이 기사에서는 주로 WeChat 애플릿 Bluetooth 장치 코드 및 오류 정렬을 공유합니다. 모두에게 도움이 되기를 바랍니다.
몇 가지 귀찮은 일들
많은 Bluetooth 장치가 전화를 방해합니다. 회사는 200개 이상의 장치를 스캔하고 iPhone 5S의 WeChat을 직접 방해할 수 있습니다.
각 하드웨어 작업 사이에 지연을 추가해야 하며, "블루투스 켜기"와 "스캔 시작", "연결 성공"과 "서비스 받기" 사이 등 100ms가 권장됩니다. 지연을 사용하지 않으면 설명할 수 없는 오류가 발생할 수 있으며, 이는 Android에서 더 일반적입니다.
JS의 비동기 및 동시성 특성, 특히 폴링 서비스의 특성에 주의하세요. 미니 프로그램은 아직 async 및 wait를 지원하지 않습니다(이 두 키워드는 코드 완성에 포함되지만 컴파일할 수는 없습니다).
Bluetooth 데이터 읽기 및 쓰기, discoversData 유형은 ArrayBuffer입니다(애플릿을 인용할 때 참고: vConsole은 ArrayBuffer 유형 데이터를 인쇄할 수 없습니다). 여러분, 먼저 이진 배열과 16진수 문자열을 이해하세요. 코드에 변환 방법이 있습니다(github에서 복사).
블루투스 어댑터(wx.openBluetoothAdapter(OBJECT))를 초기화하고 로컬 블루투스 어댑터(wx.getBluetoothAdapterState(OBJECT))의 상태를 가져옵니다. 이 두 함수 중 어느 것을 먼저 호출해야 할지 말하기 어렵습니다. 아래 지침을 참조하세요.
일부 버그
1. Bluetooth 검색 프로세스 중에 로컬 Bluetooth 어댑터 상태(wx.getBluetoothAdapterState(OBJECT))를 가져옵니다. (Android, Huawei Honor 8, VIVO 7plus, 6.5.13 전용)
availableBoolean 블루투스 어댑터 사용 가능 여부를 나타내는 값은 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 전용) BUG: 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. 블루투스가 서비스 중인 문자를 스캔할 때 여러 서비스가 있는 경우에만 정상적으로 작동합니다. 첫 번째 서비스에서 캐릭터를 가져오며, 다른 서비스에서 얻은 캐릭터는 첫 번째 서비스와 동일합니다. (IOS, IPHONE5s, WeChat 6.5.15에만 해당)
모바일 장치에서 Bluetooth를 켜고 끄는 데는 두 가지 상태가 있으며, wx.onBluetoothAdapterStateChange 콜백을 트리거합니다.
1, wx.getBluetoothAdapterState(OBJECT)
꺼진 상태가 반환됩니다. : drrCode: 10000, errMsg:"getBluetoothAdapterState:fail". 지금 블루투스를 켜세요. wx.onBluetoothAdapterStateChange(CALLBACK)에는 콜백이 없습니다.
Open 상태 반환: drrCode:10000,errMsg:"getBluetoothAdapterState:fail". 지금은 Bluetooth를 끄십시오. wx.onBluetoothAdapterStateChange(CALLBACK)에는 콜백이 없습니다.
2. wx.getBluetoothAdapterState(OBJECT)
닫힌 상태는 drrCode: 10001, errMsg: "openBluetoothAdapter:fail"을 반환합니다. 지금 블루투스를 켜세요: wx.onBluetoothAdapterStateChange(CALLBACK)에 콜백이 있습니다.
Open 상태는 errMsg: "openBluetoothAdapter:ok"를 반환합니다. 지금 블루투스를 켜세요: wx.onBluetoothAdapterStateChange(CALLBACK)에 콜백이 있습니다.
관련 권장 사항:
Bluetooth 링크를 구현하기 위한 WeChat 애플릿용 코드
WeChat 애플릿이 Bluetooth를 구현하는 방법에 대한 공유 예
위 내용은 WeChat 애플릿 Bluetooth 장치 코드 및 오류 정렬의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!