Я написал приложение Android (4.4.2), которое обычно подключается/отсоединяется в большинстве случаев до периферийного устройства BLE. Тем не менее, каждый раз в то время я получаю предупреждение LogCat из NullPointerException в Bluetootgatt.java onClientConnectionState(): Android BluetoothGatt: необработанное выполнение в обратном вызове
Мой BluetoothGattCallback обратного вызова следующим образом:
@Override
public void onConnectionStateChange(BluetoothGatt gatt, int status, int newState)
{
if (status == BluetoothGatt.GATT_SUCCESS && newState == BluetoothProfile.STATE_CONNECTED)
{
gatt.discoverServices(); // triggers onServicesDiscovered() callback
}
else if (status == BluetoothGatt.GATT_SUCCESS && newState == BluetoothProfile.STATE_DISCONNECTED)
{
return;
}
else if (status != BluetoothGatt.GATT_SUCCESS)
{
gatt.disconnect();
}
}
приложение всегда правильно идет к onConnectionStateChange newState == STATE_CONNECTED обратный вызов при подключении, но когда он выдает исключение (при отключении приложения), он никогда не идет нигде в обратном вызове onConnectionStateChange. Я запускаю это на 2013 Nexus 7. Почему это исключение происходит?
Вы заставляли его работать? – shamaleyte