Я пробовал разные реализации подключения BLE на Android. Один с RxAndroidBle, а другой с простым Android API. Я использовал пример приложения RxAndroidBle для тестирования. Подключаюсь к тому же периферийному устройству с тем же сервисом и характеристикой. Хотя, когда я читаю или получаю уведомления от него, в случае RxAndroidBle я получаю 512 байт, а в случае Android API - всего 20. Я пытаюсь запросить MTU 512, но onMtuChanged никогда не вызывается, и я все равно получаю 20. Я что-то упускаю ?
requestMtu
, результатtrue
илиfalse
? - person stkent   schedule 27.05.2018true
- person Nataliya Le Loup   schedule 27.05.2018onMtuChanged
? Если я правильно помню, они проглатываются по умолчанию. Может там что-то прячется... - person stkent   schedule 27.05.2018D/BluetoothGatt: configureMTU() - device: B8:**** mtu: 512 D/BtGatt.GattService: configureMTU() - address=B8:*** mtu=512 E/bt_btif: No pending command
- person Nataliya Le Loup   schedule 28.05.2018requestConnectionPriority
, я получаю следующее:W/bt_l2cap: L2CA_UpdateBleConnParams - unknown BD_ADDR ********** E/bt_btif: Update connection parameters failed!
Есть идеи по этому поводу? - person Nataliya Le Loup   schedule 28.05.2018requestConnectionPriority
только после установления соединения: `if (newState == BluetoothProfile.STATE_CONNECTED) { boolean req = mBluetoothGatt.requestConnectionPriority(BluetoothGatt.CONNECTION_PRIORITY_BALANCED); Log.i(TAG, Подключено к серверу GATT и requestConnectionPriority: +req); } else if `по-прежнему получают те же результаты - person Nataliya Le Loup   schedule 28.05.2018bluetoothGatt
из одного и того же потока — в некоторых реализациях это может быть проблемой. - person Dariusz Seweryn   schedule 29.05.2018TRANSPORT_LE
, но это не всегда может быть case возможно из-за неправильной реализации периферии. Не стесняйтесь добавлять дополнительную информацию, когда она доступна. - person Dariusz Seweryn   schedule 09.06.2018