2011-09-27 48 views
1

我提出了一個有趣的問題。我想要實現的是我有一個商家名單和他們的地址。我想要他們的經度和緯度,以便我可以確定用戶(使用位置偵聽器)是否在該商家的一公里範圍內。我已經完成了代碼,以確定它們是否在該半徑內。檢索傳遞給服務器的經度和緯度fron地址

我需要的是商家的經度和緯度,正如我所說的。有沒有一種肥皂服務可以用來傳遞商家的地址,並用經度和緯度作出響應?或者我可以以某種方式將它發送到Google Places API?

回答

0

既然你已經標記的Android下的問題,我會採取一擊,並假設通過「我怎麼用這個用java」,你實際上意味着我怎麼能做到這一點的Android平臺。

幸運的是,Android提供了Geocoder的API,你可以使用地理編碼地址轉換爲經度/緯度座標,通過執行以下操作:

gc = new Geocoder(this); //create new geocoder instance 
btnSearch.setOnClickListener(new OnClickListener() { 
    public void onClick(View v) { 
    String addressInput = adress.getText().toString(); //Get input text 
    try { 
     List<Address> foundAdresses = gc.getFromLocationName(addressInput, 5); //Search addresses 
    } 
    catch (Exception e) { 
     //@todo: Show error message 
    } 
    } 
}); 

above quoted from AndDev tutorial

一旦你得到了lon/lats,你可以創建一個GeoPoint並在地圖上打他們,link here如何做到這一點。

+0

這就是輝煌的謝謝 –

1

我認爲Google Maps API可以通過他們的GEOCODING支持來滿足您的需求。

http://code.google.com/apis/maps/documentation/javascript/v2/services.html#Geocoding

+0

我怎麼能用這個與java? –

+1

他們有一個服務,你可以通過HttpRequest調用,取回JSON或XML作爲響應 - 你大概能夠從這個響應中提取lat + long? – mcfinnigan

+0

是的,可以實現。我只需要學習如何發送http請求並解壓縮,但之前我已經完成了,所以我應該沒問題。謝謝。 –