2017-09-05 30 views
1

在我的應用程序中,我必須向我的服務器發送緯度/經度,作爲回報,我得到的數據範圍爲10-15米,我必須在地圖上添加人員。我可以通過幾種不同的方案實現這一點:不斷更新用戶當前位置是一個好主意嗎?

1-我可以加載100米範圍內的所有數據,並且只在用戶搜索超出此範圍時發出請求。

2-每當用戶搜索一個位置,並且當用戶位於該位置時,我可以使用方法「startUpdatingLocation」,我可以調用「stopUpdatingLocation」。最後的位置將被保存並用於發送請求。

3-或者我可以保持位置更新,當用戶點擊按鈕發出請求時,我可以獲得最後的經緯度。

他們可能聽起來很相似,但我想知道哪種情況可以節省更少的內存和數據使用量。

回答

1

這取決於用戶執行搜索的頻率以及他們的搜索在地理上彼此接近。方法#1使用更多的內存,因爲它必須存儲更大量的數據(這取決於數據的樣子,可能不是什麼大不了的),但是如果必須的話,它可以長期保存數據的使用執行較少的查詢到您的服務器。這取決於用戶的行爲。

方法#2和#3在數據使用和內存方面似乎沒有任何區別,因爲您正在描述保持用戶經緯度更新的不同方法。這似乎與您的服務器的數據使用率無關。

+0

嗯,用戶可能會提出10-15個請求,但搜索可能彼此接近 – Siyavash

相關問題