我可以使用Bing Maps API和Java进行地理位置定位吗?我有API密钥,但在网上找不到任何内容。
我找到了一个可以使用Excel宏的方法,该方法可以运行,但还不够,我需要一个Java控制台脚本来完成它。
干杯,达米亚诺。
答案 0 :(得分:1)
在Java中似乎没有任何官方方法可以使用Maps API。
但是,here上有一个用于API的非官方Java包装器。尚未对此进行过一段时间的更新,因此无法保证它仍然可以正常工作,但这应该是实现地理编码请求的良好起点。
还有一种方法可以在client.reverseGeocode()
的同一包装器中实现反向地理编码请求。
import net.virtualearth.dev.webservices.v1.common.GeocodeResult;
import net.virtualearth.dev.webservices.v1.geocode.GeocodeRequest;
import net.virtualearth.dev.webservices.v1.geocode.GeocodeResponse;
import com.google.code.bing.webservices.client.BingMapsWebServicesClientFactory;
import com.google.code.bing.webservices.client.geocode.BingMapsGeocodeServiceClient;
import com.google.code.bing.webservices.client.geocode.BingMapsGeocodeServiceClient.GeocodeRequestBuilder;
public class BingMapsGeocodeServiceSample {
public static void main(String[] args) throws Exception {
BingMapsWebServicesClientFactory factory = BingMapsWebServicesClientFactory.newInstance();
BingMapsGeocodeServiceClient client = factory.createGeocodeServiceClient();
GeocodeResponse response = client.geocode(createGeocodeRequest(client));
printResponse(response);
}
private static void printResponse(GeocodeResponse response) {
for (GeocodeResult result : response.getResults().getGeocodeResult()) {
System.out.println(result.getDisplayName());
}
}
private static GeocodeRequest createGeocodeRequest(BingMapsGeocodeServiceClient client) {
GeocodeRequestBuilder builder = client.newGeocodeRequestBuilder();
builder.withCredentials("xxxxxx", null);
builder.withQuery("1 Microsoft Way, Redmond, WA");
// builder.withOptionsFilter(Confidence.HIGH);
return builder.getResult();
}
}