gpt4 book ai didi

安卓蓝牙Gatt : Unhandled execption in callback

转载 作者:搜寻专家 更新时间:2023-11-01 08:45:49 27 4
gpt4 key购买 nike

我编写了一个 Android 应用程序 (4.4.2),它在大多数时间都能正确连接/断开 BLE 外围设备。但是,每隔一段时间我就会在 Bluetootgatt.java onClientConnectionState() 中收到 NullPointerException 的 LogCat 警告: error

我的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 上运行此程序。为什么会出现此异常?

最佳答案

这似乎是我在 onPause() 函数中调用 disconnect() 后跟 close() 造成的。我删除了 disconnect() 并且 close() 可以很好地处理断开连接,我再也看不到异常了。

关于安卓蓝牙Gatt : Unhandled execption in callback,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28400740/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com