私が使用しているシステムは、次のシナリオを使用しています。
- Bluetooth LE デバイスへの接続
- サービスと特徴を発見する
- コマンドを TX 特性に書き込み、応答を受け取る
上記は 90% の時間で問題なく動作します。ときどき、システムは 3 番目のステップが常に失敗する状態になります (ステップ 1 と 2 が成功したにもかかわらず、デバイスからの応答はまったくありません。アプリ / 電話 / BLE デバイスを再起動しても、これは解決しません。ブロックは一定です。何が解決しますか)問題は、iOS システム設定からデバイスを手動でペアリング解除することです.BLE 診断ログを見ると、次のようになります:
「pon.mar 7 21:27:30 設定 [380]: [CoreBluetooth] API の誤用: 接続状態でのみコマンドを受け入れることができます」
ただし、コマンドを送信する前にアプリをデバッグしたところ、100% 接続が確立され、サービスと特性が検出されました。何か案が?同様の問題に直面している人はいますか?