【发布时间】:2011-09-27 10:34:39
【问题描述】:
我提出了一个有趣的问题。我想要实现的是我有一个商家列表和他们的地址。我想要他们的经度和纬度,这样我就可以确定用户(使用位置监听器)是否在该商家的一公里半径内。我已经完成了代码以确定它们是否在该半径内。
我需要的是我说的商家经纬度。有没有可以用来传递商家地址并以经度和纬度响应的soap服务?或者我可以以某种方式将其发送到 Google Places API 吗?
【问题讨论】:
我提出了一个有趣的问题。我想要实现的是我有一个商家列表和他们的地址。我想要他们的经度和纬度,这样我就可以确定用户(使用位置监听器)是否在该商家的一公里半径内。我已经完成了代码以确定它们是否在该半径内。
我需要的是我说的商家经纬度。有没有可以用来传递商家地址并以经度和纬度响应的soap服务?或者我可以以某种方式将其发送到 Google Places API 吗?
【问题讨论】:
我认为 Google Maps API 通过其 GEOCODING 支持可以满足您的需求。
http://code.google.com/apis/maps/documentation/javascript/v2/services.html#Geocoding
【讨论】:
由于您已在 Android 下标记了该问题,因此我将尝试一下,并假设“我如何在 java 中使用它”,实际上您的意思是我如何在 android 平台上执行此操作。
幸运的是,android 提供了 Geocoder API,您可以通过执行以下操作将地址地理编码为 lon/lat 坐标:
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
}
}
});
【讨论】: