我正在编写一个Android应用程序(ICS 4.0.3)来发现设备并列出他们的UUID。
该应用程序执行蓝牙设备发现,当它找到设备时会保存它。一旦设备发现完成,它将返回它保存的所有设备并执行fetchUUidsWithSdp(),然后在广播接收器中打印出它找到的UUID。
当应用程序运行时,我得到每组两个响应,每个响应包含它发现的所有设备上的所有UUID。
这是应该的方式吗?
我在文档中看到:
如果获取SDP记录时出错或者进程需要很长时间,则会使用当前存在于缓存中的UUID发送ACTION_UUID意图。
两组响应都很快,但我猜第一组可能来自缓存,第二组来自远程设备。
可以在http://digitalhacksblog.blogspot.com/2012/05/android-example-bluetooth-discover-and.html找到代码。