Ble MTU согласование не работает: обратный вызов onMTUchanged не запускается в приложении ble - PullRequest
0 голосов
/ 23 ноября 2018

Я работаю над приложением BLE. Я новичок в концепции BLE.Я запрашиваю MTU для 512. Но обратный вызов на MTUlated не запускается.Используемая ОС Android 8.1.0 и телефон Moto G (5 с).APK равен 27. Код выглядит следующим образом:

         if (newState == BluetoothProfile.STATE_CONNECTED) {

                Log.i(TAG, "Connected to a remote GATT server.");

                mBluetoothGatt.requestMtu(512);

          } 

 @Override
    public void onMtuChanged(BluetoothGatt gatt, int mtu, int status) {
        Log.i(TAG,"onMtuChanged" );
        super.onMtuChanged(gatt, mtu, status);

        if (status == BluetoothGatt.GATT_SUCCESS) {
           BleDataExchangeClientActivity.this.supportedMTU = mtu;
            if(mBluetoothLeService.discoverServices(mBluetoothGatt)) {
                Log.i(TAG, "Attempting to start service discovery");
            }

        }
    }

Я прилагаю журнал следующим образом:

2018-11-23 12:11:28.054 12277-12291/com.comodevapp 
D/BluetoothGatt: configureMTU() - device: 11:22:33:A4:A5:A6 mtu: 512
2018-11-23 12:11:28.914 12277-12291/com.comodevapp D/BluetoothGatt: 
onConfigureMTU() - Device=11:22:33:A4:A5:A6 mtu=23 status=0
2018-11-23 12:17:08.519 12277-12290/com.comodevapp D/BluetoothGatt: 

Пожалуйста, помогите мне.

...