【发布时间】:2022-06-10 20:06:54
【问题描述】:
我正在开发一个需要读取 iBeacons 并在数据库中搜索 id 的 Android 和 iOS 应用。 这个 Id 应该是 macadress 还是 beacon uuid?
【问题讨论】:
标签: bluetooth-lowenergy ibeacon ibeacon-android
我正在开发一个需要读取 iBeacons 并在数据库中搜索 id 的 Android 和 iOS 应用。 这个 Id 应该是 macadress 还是 beacon uuid?
【问题讨论】:
标签: bluetooth-lowenergy ibeacon ibeacon-android
很遗憾,MAC 地址和 iBeacon UUID 在很大程度上无法识别 iOS 上的信标。原因如下:
iBeacon 蓝牙 LE 广告有四个标识符:
前两个标识符在 iOS 上受到高度限制,因此您实际上无法使用它们来识别信标。 Apple 会阻止您读取 MAC,这使其无法在 iOS 上使用,并且 Apple API 要求您在查找信标时将 iBeacon UUID 预先指定为“过滤器”。这使得区分一个信标和另一个信标几乎毫无用处。
因此,在 iOS 上,您确实需要使用主要字段和次要字段来区分信标(尽管如果有帮助,您可以将它们与 UUID 一起使用。)
Android 没有相同的限制。您可以读取 MAC,并且在查找 iBeacon 数据包时不必预先指定 UUID。但您可能希望对 Android 检测执行与 iOS 检测相同的操作,以保持简单。
【讨论】: