0

我将为一个拥有大量零售商店和多个楼层的购物中心开发一个应用程序(与信标集成)。举个例子,它有数千家零售店,每家商店都安装了自己的信标/UUID 信标。

我的问题是:
1. 我如何实际处理所有 UUID?我应该将它们存储在数据库中吗?
2. 如何仅在客户到达楼层时检测一楼所有beacon的UUID?
3. 我们不应该同时加载所有数千个 UUID 对吗?我们如何动态扫描 UUID?

4

1 回答 1

0

设计信标标识符方案既是一门艺术,也是一门科学。正确执行此操作在很大程度上取决于您的特定用例,尤其是当您想在后台唤醒应用程序时。一些想法:

  1. 您一次只能监控 20 个 ProximityUUID(使用 20 的限制CLBeaconRegions),因此请尽量减少 ProximityUUID 的数量。 如果可能,对所有信标仅使用一个 ProximityUUID。 由于所需的数量很少,没有理由将它们存储在数据库中。

  2. 可以使用单个 ProximityUUID 并监视和覆盖此 ProximityUUID 下的所有信标。因为有 65536 个可能的主要值和 65536 个可能的次要值,这意味着您可以拥有 4294967296 个具有单个 ProximityUUID 的信标。 理论上,应用程序可以同时看到所有内容,但前提是在蓝牙 LE 的约 40 米范围内。在实践中,您可能会从任何位置看到几十个信标。

  3. 重要的是要了解每次CLBeaconRegion检测到或停止检测到不同时,您的应用程序都可以获得后台触发器。 如果您想让您的应用在移动设备在商场周围移动时唤醒以向用户发送通知,这一点很重要。 如果您的用例需要这样做,您将需要设计一个标识符方案,以便您拥有许多具有不同 ProximityUUID/主要组合的非相邻CLBeaconRegion定义,以便在您在商场周围移动时触发它们。

于 2015-10-05T13:03:54.070 回答