私はさまざまなデバイスで何百もの幸せなユーザーを持つBLEアプリケーションを持っています。ほとんどのテストはNexus端末で行われていましたが、ユーザーがHTC M8で問題を報告したため、購入しました。確かに、何らかの理由でconnectGatt
が動作していません。それは例外をスローせず、返すBluetoothGattオブジェクトはnullではありません。しかし、私が渡したBluetoothGattCallbackのonConnectionStateChange
は決して呼び出されません。Android BluetoothDevice connectGattがAndroid 6.0搭載のHTC M8で動作しない
いくつかの電話ではconnectGattをUIスレッドで呼び出す必要があるというレポートがいくつか見つかりましたので、何も変更はありません。ここで
ログは、私が手だ:
D/BluetoothGatt: connect() - device: CE:FA:92:61:A3:4F, auto: false
D/BluetoothGatt: registerApp()
D/BluetoothGatt: registerApp() - UUID=f7a1a0e9-0d45-4b71-9457-9adf6ccb4bf8
D/BluetoothGatt: onClientRegistered() - status=0 clientIf=5
その後沈黙...
任意のアイデア?ありがとう!
良いアイデア。 Android 6.0のM8のnRF MCPから接続しようとしましたが、接続できません。 Nexus 4では5.1.1を実行しても正常に動作します。 (FWIWは、Android 6.0で自分自身と他の多くのユーザーにも接続可能です)。 –
接続を試みている間にM8からのHCIスヌープログを使ったWiresharkのスクリーンショットがあります(デバイスのMACアドレスが強調表示された行のフレームに表示されています)。 http://files.cousins-sears.com/3Q3j0r1o1O3p接続が試行され、11秒後にキャンセルされたようです。残念ながら、私はプロトコルアナライザにアクセスすることはできません。 –
Command Statusイベントの詳細を共有できますか?ここに何が起きているのかという手がかりを含んでいるかもしれません。 –