0

我已经在 Android 上构建了一个基于接近警报的应用程序,它按预期工作并完美地触发警报。

作为一个持续的努力,我现在想解决这个应用程序的可伸缩性方面。所以基本上我试图解决一个场景,每个用户可能会订阅 10 到 20 个类别,每个类别可能在特定城市有 100 个 POI(购物等兴趣点)。因此,一次将有 2000 多个警报必须在用户的手机上注册。

这有两个后果:

  1. 通过网络从存储库为订阅者获取 2000 个警报的大小可能为 10-20 MiB,并在通过慢速连接加载时挂在 Android 设备上。
  2. 即使加载了所有警报,它也会消耗设备上的大量内存。

为了缓解这种情况,我正在寻找一种适当扩展此应用程序的策略。有没有办法我可以找到有关当前位置的扩展信息,并请求仅在一公里范围内加载警报?或任何其他推荐的策略来处理此要求。这方面的代码示例会很棒......

谢谢, Biplab

4

1 回答 1

0

为什么不做一些简单的事情——查询网络服务并让它返回在传入位置(用户位置)的纬度和经度 1 度范围内订阅的所有位置。然后每隔半小时左右通过警报检查客户端上的位置,并根据您的新位置查询新列表。

于 2013-03-28T03:32:34.980 回答