在我的应用程序中,我必须向我的服务器发送一个Lat / Long,作为回报,我得到一个10-15米范围内的数据数组,我必须在地图上添加人员。我可以通过几种不同的场景实现这一目标:
1-我可以加载100米范围内的所有数据,只有当用户在此范围之外搜索时才会发出请求。
2-我可以使用方法" startUpdatingLocation"每当用户搜索某个位置,当用户在该位置时,我就可以调用" stopUpdatingLocation"。最后一个位置将被保存并用于发送请求。
3-或者我可以保持位置更新,当用户点击按钮发出请求时,我可以获得最后一个lat / lang。
它们可能听起来很相似,但我想知道哪种方案可以节省更少的内存和数据。
答案 0 :(得分:1)
这取决于用户执行搜索的频率,以及他们的搜索在地理位置上是否彼此接近。方法#1使用更多内存,因为它必须存储更大的数据数据(这取决于数据的样子,可能不是很大)但是如果你有长期运行可能会节省数据使用量对您的服务器执行较少的查询。这取决于用户行为。
方法#2和#3在数据使用和内存方面似乎没有任何不同,因为您描述了保持用户的经度和经度更新的不同方法。这似乎与服务器的数据使用无关。