2012-04-02 31 views
0

我有一個關於geopoints球員的問題..位置感知Android,在java或數據庫中比較距離?

我在android中實現了位置感知客戶端 - 服務器應用程序。客戶端在服務器數據庫(mysql)中有一些保存位置。他們會收到一些綁定到這些位置的消息。

我必須比較2點之間的距離,什麼是存儲和計算距離的最佳方式。使用查詢 計算數據庫中的dinstance或將所有結果生成java服務器,然後計算由Location.distanceBetween(..)提供的2個點。

哪種方式更好,我是一個新手。謝謝..

回答

0

如果你用查詢計算數據庫中的距離,那麼你應該通過數據庫中的所有行......並計算該行中每個點的距離。或者如果你得到所有結果到服務器,然後計算2點之間的距離,那麼你也應該通過數據庫的所有行並獲得行中的值..然後計算距離..但在第二種情況下你應該得到數據庫中的所有值 (我的意思是位置值)...但在第一種情況下只有一個值 ...這是額外的工作,你應該在第二種情況..所以.. 第一種方式是更好的 ...我想..

+0

謝謝您的回答,我認爲它也是更好的方式。那麼,位置存儲是整數度還是緯度形式,以便高效查詢? – 2012-04-02 11:41:47

+0

如果你在int中存儲數據,它將會產生差異.. – 2012-04-02 11:55:19