2010-02-17 48 views
3

我的項目在J2ME上運行,需要我獲取用戶當前的街道地址。我能夠使用基於位置的用戶座標。但我怎麼去得到街道地址?使用J2ME進行反向地理編碼

我知道谷歌地圖做反向地理編碼。但我怎麼能鏈接到我的應用程序?還會有什麼法律問題嗎?

任何指導將不勝感激。謝謝!!!

Kevin

回答

1

在J2ME應用程序中使用Google地圖存在法律問題。 Google Maps API只能在瀏覽器中使用。

見10.8這個頁面上:http://code.google.com/apis/maps/terms.html

谷歌地圖也有獨特的地圖,你可以每個IP地址的下載次數的限制。通常這對任何基於PC的應用程序來說都足夠了。但是,在移動設備上,許多設備將通過代理Web服務進行傳輸,以便許多設備具有相同的IP地址。因爲這個限制很快就達到了。

雅虎地圖在它的T & Cs中沒有這樣的限制,並且每個IP地址的限制更高。他們還將某些IP地址標記爲代理服務器,因此它們不計入限制。我們已經使用這種商業。

至於反向GeoCoding,有GeoNames web服務,雖然我沒有親自使用它。

+0

GeoNames網址:http://www.geonames.org/export/web-services。html – Wex 2010-02-17 15:00:14

+0

嗨Wex, 感謝您的答覆..至於你的網址,我已經瀏覽過它。問題是,該Web服務不提供我國的郵政編碼。順便說一句,我來自新加坡... 至於你的雅虎地圖?所以雅虎也有類似谷歌地圖呢?即反向地理編碼.. – Nivek 2010-02-17 17:43:11

+0

我們還沒有做任何反向地理編碼商業上;只是在研發中。我們的一個故障安全方法涉及在所有郵編及其區域覆蓋率的應用程序中擁有一個數據庫。通過一些智能的查找調用(多邊形中的點),它可以正常工作......但它是一個巨大的數據集(我們在英國正在這樣做)。否則,運行自己的服務器也可以完成這項工作,並且可以在不更新應用程序的情況下更新數據集。一切都取決於你的最終目標是什麼。 – Wex 2010-02-18 09:53:56

1

這是一個很晚的回覆,但我實際上是在尋找同樣的東西,現在我終於做到了。

你需要做的:

  • 通過打開J2ME HTTP連接發送給谷歌服務器的請求,然後你會根據您所請求的HTTP鏈接獲得無論是在XML或JSON從谷歌迴應。
  • 解析此響應以從XML或JSON文檔檢索位置。
    • 對於XML,我建議使用kXML 1.2解析器
    • 對於使用json.org解析器的JSON解析。

你可以給我發郵件,如果你還是堅持了下來,因爲我通過階段已經:)。 寄給我在[email protected]

2

Java ME的不規範實際上本地反向地理編碼爲JSR 293位置API 2.0的一部分: 「4.2.2地理編碼」 http://www.j2megame.org/j2meapi/JSR_293_Location_API_2_0/index.html?javax/microedition/location/services/GeocodingServiceProvider.html

科在本文下方描述反向使用位置API 2.0中的Java ME geoding: http://www.locationaware.usf.edu/wp-content/uploads/2011/09/Barbeau-Location-API-2.0-for-J2ME-COMCOM3573.pdf

然而,目前JSR 293沒有被廣泛在市售的Java實現ME手機,至少那些在美國上市相反,大多數手機仍實現JSR179位置API 1.0。