QianCxy 2018-10-24 13:58 采纳率: 0%
浏览 2894

BLE的UUID是不是固定的?

请问,不同的硬件BLE设备,它们的Service和Characteristic的UUID是不是都是一样的?
最近写app做练习,在连接BLE模块时,可以正常收发信息,但是连接了另一个BLE设备时,会短暂连接后马上崩溃。下面是AS的报错,

 E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: com.example.administrator.mi_home, PID: 5569
                  java.lang.RuntimeException: Error receiving broadcast Intent { act=com.example.bluetooth.le.ACTION_GATT_SERVICES_DISCOVERED flg=0x10 } in com.example.administrator.mi_home.DeviceFragment.OneDeviceFragment$1@c064ebc
                      at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1228)
                      at android.os.Handler.handleCallback(Handler.java:761)
                      at android.os.Handler.dispatchMessage(Handler.java:98)
                      at android.os.Looper.loop(Looper.java:156)
                      at android.app.ActivityThread.main(ActivityThread.java:6523)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
                   Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.util.UUID android.bluetooth.BluetoothGattCharacteristic.getUuid()' on a null object reference
                      at android.bluetooth.BluetoothGatt.setCharacteristicNotification(BluetoothGatt.java:1104)
                      at com.example.administrator.mi_home.Service.BleService.setCharacteristicNotification(BleService.java:175)
                      at com.example.administrator.mi_home.DeviceFragment.OneDeviceFragment$1.onReceive(OneDeviceFragment.java:141)
                      at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:1218)
                      at android.os.Handler.handleCallback(Handler.java:761) 
                      at android.os.Handler.dispatchMessage(Handler.java:98) 
                      at android.os.Looper.loop(Looper.java:156) 
                      at android.app.ActivityThread.main(ActivityThread.java:6523) 
                      at java.lang.reflect.Method.invoke(Native Method) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832) 

提示有个空指针异常,

  mBluetoothGatt.setCharacteristicNotification(characteristic, enabled); // 关键代码
  • 写回答

2条回答 默认 最新

  • devmiao 2018-10-24 16:52
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作