android ble connectGatt timeout - PullRequest
       6

android ble connectGatt timeout

0 голосов
/ 05 апреля 2019

Для экономии заряда батареи встроенного устройства период рекламы составляет 10 секунд. С планшетом Samsung мне удается сканировать устройство с периодом ожидания сканирования 30 с. Когда я пытаюсь подключиться к нему, почти каждый раз, когда соединение не удается (ошибка 133). Иногда это нормально. Я уже искал некоторые сообщения, поэтому я пытаюсь подключиться с параметром TRANSPORT_LE. Я подозреваю, что тайм-аут во время процедуры подключения, потому что он останавливается только через 2 или 3 секунды.

Как можно указать более длительное время ожидания для процедуры connectGatt ()?

С уважением, Mich

1 Ответ

0 голосов
/ 10 апреля 2019

Вот какой-то метод, к которому я обращаюсь со статусом 133.

Я добавляю этот код в обратный вызов

onConnectionStateChange
else if ((status == 8 && newState == 0) || (status == 133 && newState == 0)) { 
                gatt.disconnect();
                gatt.close();
                gatt.getDevice().connectGatt(getApplicationContext(), false, mGattCallback);
            }

Я просто отключаю и освобождаю все ресурсы Bluetooth с помощью gatt.close (). Затем снова подключитесь к нему.

...