2012-04-21 83 views
1

我看到,在不同的網絡服務(例如在Twitter或Facebook上,但也有其他網絡服務),他們能夠說出用戶的地理位置。 Java中是否有這種類型的地理定位庫?如何在Java中獲取當前用戶的地理位置?

我在考慮建設一個我們服務,這將取決於Ø用戶的地理位置信息。

請注意,我不是在這裏談論移動設備上的地理位置,我希望得到誰使用他的網站broawser他/她desktoo計算機上的用戶的位置。

+0

它必須是IP地址。它們將用戶的IP地址與查找數據庫相匹配。 – 2012-04-21 10:26:55

+0

是不是[1415851 /最佳途徑獲取地理位置在Java](http://stackoverflow.com/questions/1415851/best-way-to-get-geo-location -in-JAVA)? – 2012-10-31 09:34:43

回答

1

帶有WiFi到位的最大數據庫是Skyhook無線。你可以從這裏得到SDK:Skyhook Location SDK

它沒有完全覆蓋,但它是我認爲最好的(谷歌和蘋果使用它)。

+0

是的,我發現Skyhook,但他們沒有在他們的網頁上顯示價格,所以我正在尋找更透明的解決方案。謝謝:) – Jakub 2012-04-21 12:13:23

0

他們正在維護龐大的IP數據庫來跟蹤基於主機的用戶地理位置。

而作爲一個單獨的它不可能保持所有主機映射。 因此,爲此你必須再見IP表格第三方提供商。

但是,如果你願意,你可以得到的位置信息即城市,地區,國家,經度,緯度從請求頭。

這僅適用於GAE的用戶(IP表是由谷歌保持)。

如果你願意,你可以在GAE舉辦一個示例應用程序,並使用Web服務調用從您的server.Particularly我說的對非GAE用戶獲取位置信息(SOA)。

欲瞭解更多詳情,請通過GAE ReleaseNotes

country  = request.getHeader("X-AppEngine-Country"); 
    region  = request.getHeader("X-AppEngine-Region"); 
    city  = request.getHeader("X-AppEngine-City"); 
    temp  = request.getHeader("X-AppEngine-CityLatLong"); 
相關問題