4

我对 iOS 中的地理围栏限制有疑问。

我正在为烟店构建一个应用程序。地点加起来大约 200 个。

我想让用户在离商店几英尺远的地方“自动”签到。

Apple 施加的限制是 20。

苹果文档

区域是依赖于特定硬件功能的共享资源。为确保所有应用都可以参与区域监控,Core Location 会阻止任何单个应用同时监控 20 多个区域。要解决此限制,请仅监视靠近用户当前位置的区域。随着用户移动,根据用户的新位置更新列表。

如文档中所示,Apple 建议开发人员在用户更新他/她的位置时更新 20 个区域的列表。

在此处输入图像描述

想到三个问题。

  1. 文档说“核心位置阻止任何单个应用程序同时监控 20 多个区域。”。这是否意味着,作为开发人员,我只能在我的应用程序中设置区域的 20 个位置?因为我有 200 个位置(200 个客户希望在他们的商店周围拥有此功能)。

  2. Apple 提供了解决此限制的方法。这是否意味着 20 个区域限制仅适用于应用程序用户?这是否意味着我可以设置 200 个位置,但用户只能看到离他们最近的 20 个可以签到的位置?

  3. 当我有 10 个用户使用我的应用程序并且他们拥有超过 20 个位置的区域时会发生什么?

4

1 回答 1

4

1 - 这意味着您的应用可以跟踪 20 个地理围栏。如果您想跟踪 200 个地理围栏,您可以始终跟踪 20 个最近的区域。您需要创建一个策略来更新您的地理围栏列表。例如,您可以在进入/离开您的地理围栏时更新您的 20 个关闭地理围栏。或者您可以在执行后台 fetch时在后台更新它们。

2 - 地理围栏与地图区域不同。您可以在地图中显示任意数量的区域(例如使用 mapkit)。

3 - 地理围栏限制由设备给出。每个用户最多可以跟踪 20 个地理围栏。

于 2018-05-16T19:00:47.453 回答