这不是任何问题的重复。
我正在创建一个应用程序,该应用程序使用蓝牙来查找使用我附近的应用程序的其他用户。 有了android,它可以。但是如果我使用iOS,那是不可能的,因为我已经在stackoverflow中读到了这里,它不可能通过蓝牙扫描识别一个设备是唯一的,(如果它存在,请让它我知道!!!!)但是让我举一个例子来说明我在寻找:
如果在我的应用程序中注册了两个不同的人(分别是Robin1和Robin2)并且他们的蓝牙中有相同的名称(例如" Robin' iphone"),有一种方法可以在我的应用程序中告诉我第一个"罗宾的iphone"是" Robin1" (他在我的应用程序中的昵称)和第二个"罗宾的iphone"是"罗宾2"? 我唯一需要的是蓝牙扫描'因为我的应用程序是基于真正靠近你的用户而且GPS不准确......还没有。
我希望这个例子写得很好:/
谢谢
答案 0 :(得分:3)
在bluetooth-dev邮件列表和许多Stack Overflow问题中已经广泛讨论了识别设备的策略。例如,请查看此讨论:http://lists.apple.com/archives/bluetooth-dev/2013/Nov/msg00071.html
为简单起见,这里有两个选项:
startAdvertising:
调用中设置要由CBAdvertisementDataLocalNameKey公布的用户名。但是,这是一个非常脆弱的解决方案。请注意,您不能依赖CBPeripheral.identifier
进行识别,因为它会在发现外围设备的每台设备上成为不同的随机值。另请注意,如果您计划使用后台运行,那么当应用程序转到后台时,需要特别小心,因为有很多限制。