writeCharacteristic Android 出现空指针异常
Null pointer exception on writeCharacteristic Android
我正在尝试对 android 应用程序上的微处理器执行 ble 写入,但发生了一些奇怪的事情。
首先,错误日志如下:
Unhandled exception in callback
java.lang.NullPointerException
at android.bluetooth.BluetoothGatt.writeCharacteristic(BluetoothGatt.java:874)
at com.example.tannerhenry.standalone.ConfigurationActivity.setWriteSensor(ConfigurationActivity.java:248)
at com.example.tannerhenry.standalone.ConfigurationActivity.access0(ConfigurationActivity.java:31)
at com.example.tannerhenry.standalone.ConfigurationActivity.onServicesDiscovered(ConfigurationActivity.java:289)
at android.bluetooth.BluetoothGatt.onSearchComplete(BluetoothGatt.java:295)
at android.bluetooth.IBluetoothGattCallback$Stub.onTransact(IBluetoothGattCallback.java:215)
at android.os.Binder.execTransact(Binder.java:404)
at dalvik.system.NativeStart.run(Native Method)
调试了一下后,我注意到我尝试写入的特征没有被发现,因此解释了为什么会出现空指针异常。
问题是这个特性肯定是被宣传了,因为我在我的 iPhone 上下载了 LightBlue 并且这个特性出现了。这让我相信我在初始化特征时犯了一个错误,但我从应用商店下载蓝牙 LE 扫描仪后,它仍然以与我的应用相同的方式运行。
iOS 和 android getCharacteristics 的方式有区别吗?
注意:我以前遇到过这个问题,解决方法是重新下载应用程序几次,它最终读取了特征。但是我在我的平板电脑上做了一个数据清除,现在它和以前一样做同样的事情,这次重新下载并没有修复它。
如有任何帮助,我们将不胜感激,如有必要,我可以提供更多代码。
已通过手动忘记之前配对的设备并进行修复解决了该问题。
我正在尝试对 android 应用程序上的微处理器执行 ble 写入,但发生了一些奇怪的事情。
首先,错误日志如下:
Unhandled exception in callback
java.lang.NullPointerException
at android.bluetooth.BluetoothGatt.writeCharacteristic(BluetoothGatt.java:874)
at com.example.tannerhenry.standalone.ConfigurationActivity.setWriteSensor(ConfigurationActivity.java:248)
at com.example.tannerhenry.standalone.ConfigurationActivity.access0(ConfigurationActivity.java:31)
at com.example.tannerhenry.standalone.ConfigurationActivity.onServicesDiscovered(ConfigurationActivity.java:289)
at android.bluetooth.BluetoothGatt.onSearchComplete(BluetoothGatt.java:295)
at android.bluetooth.IBluetoothGattCallback$Stub.onTransact(IBluetoothGattCallback.java:215)
at android.os.Binder.execTransact(Binder.java:404)
at dalvik.system.NativeStart.run(Native Method)
调试了一下后,我注意到我尝试写入的特征没有被发现,因此解释了为什么会出现空指针异常。
问题是这个特性肯定是被宣传了,因为我在我的 iPhone 上下载了 LightBlue 并且这个特性出现了。这让我相信我在初始化特征时犯了一个错误,但我从应用商店下载蓝牙 LE 扫描仪后,它仍然以与我的应用相同的方式运行。
iOS 和 android getCharacteristics 的方式有区别吗?
注意:我以前遇到过这个问题,解决方法是重新下载应用程序几次,它最终读取了特征。但是我在我的平板电脑上做了一个数据清除,现在它和以前一样做同样的事情,这次重新下载并没有修复它。
如有任何帮助,我们将不胜感激,如有必要,我可以提供更多代码。
已通过手动忘记之前配对的设备并进行修复解决了该问题。