gpt4 book ai didi

java - Google map Java 客户端 - GeocodingApi.reverseGeocode 不返回结果

转载 作者:行者123 更新时间:2023-12-02 11:22:01 24 4
gpt4 key购买 nike

全部。

我正在使用 Google map 服务 Java 客户端 ( https://github.com/googlemaps/google-maps-services-java ) 在我的应用中提供一些简单的地址和距离功能。

我正在使用 Gradle 构建项目,以下是我的依赖项:

dependencies {   
compile 'com.google.maps:google-maps-services:0.2.7'
compile 'org.slf4j:slf4j-nop:1.7.25'
}

当我在浏览器中使用 URL 请求时,一切正常: https://maps.googleapis.com/maps/api/geocode/json?latlng=-3.775657,-38.456086&key=APP_KEY

这将返回 json:

{
"results" : [
{
"address_components" : [
{
"long_name" : "Regents Drive",
"short_name" : "Regents Dr",
"types" : [ "route" ]
},
{
"long_name" : "Midtown",
"short_name" : "Midtown",
"types" : [ "neighborhood", "political" ]
},
{
"long_name" : "Atlanta",
"short_name" : "Atlanta",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Fulton County",
"short_name" : "Fulton County",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Georgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
},
{
"long_name" : "30318",
"short_name" : "30318",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Regents Dr, Atlanta, GA 30318, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 33.7738168,
"lng" : -84.4027023
},
"southwest" : {
"lat" : 33.773736,
"lng" : -84.4027736
}
},
"location" : {
"lat" : 33.7737764,
"lng" : -84.402738
},
"location_type" : "GEOMETRIC_CENTER",
"viewport" : {
"northeast" : {
"lat" : 33.7751253802915,
"lng" : -84.40138896970851
},
"southwest" : {
"lat" : 33.7724274197085,
"lng" : -84.40408693029151
}
}
},
"place_id" : "ChIJo4ce6I4E9YgR7lIy86g_9qg",
"types" : [ "route" ]
},
{
"address_components" : [
{
"long_name" : "Georgia Tech",
"short_name" : "Georgia Tech",
"types" : [ "neighborhood", "political" ]
},
{
"long_name" : "Atlanta",
"short_name" : "Atlanta",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Fulton County",
"short_name" : "Fulton County",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Georgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Georgia Tech, Atlanta, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 33.7815729,
"lng" : -84.39036369999999
},
"southwest" : {
"lat" : 33.7712771,
"lng" : -84.40759419999999
}
},
"location" : {
"lat" : 33.7784626,
"lng" : -84.3988806
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 33.7815729,
"lng" : -84.39036369999999
},
"southwest" : {
"lat" : 33.7712771,
"lng" : -84.40759419999999
}
}
},
"place_id" : "ChIJbw3_E4oE9YgR9yiVCsbTgyY",
"types" : [ "neighborhood", "political" ]
},
{
"address_components" : [
{
"long_name" : "Midtown Atlanta",
"short_name" : "Midtown Atlanta",
"types" : [ "neighborhood", "political" ]
},
{
"long_name" : "Atlanta",
"short_name" : "Atlanta",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Condado de Fulton",
"short_name" : "Condado de Fulton",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Geórgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Midtown Atlanta, Atlanta, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 33.8065291,
"lng" : -84.3646146
},
"southwest" : {
"lat" : 33.7712281,
"lng" : -84.41529749999999
}
},
"location" : {
"lat" : 33.7833019,
"lng" : -84.3828403
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 33.8065291,
"lng" : -84.3646146
},
"southwest" : {
"lat" : 33.7712281,
"lng" : -84.41529749999999
}
}
},
"place_id" : "ChIJ1fsiOmsE9YgRKGR8OxRmepQ",
"types" : [ "neighborhood", "political" ]
},
{
"address_components" : [
{
"long_name" : "Atlanta",
"short_name" : "Atlanta",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Condado de Fulton",
"short_name" : "Condado de Fulton",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Geórgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Atlanta, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 33.8876179,
"lng" : -84.289389
},
"southwest" : {
"lat" : 33.6478079,
"lng" : -84.5518189
}
},
"location" : {
"lat" : 33.7489954,
"lng" : -84.3879824
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 33.8876179,
"lng" : -84.289389
},
"southwest" : {
"lat" : 33.6478079,
"lng" : -84.5518189
}
}
},
"place_id" : "ChIJjQmTaV0E9YgRC2MLmS_e_mY",
"types" : [ "locality", "political" ]
},
{
"address_components" : [
{
"long_name" : "30313",
"short_name" : "30313",
"types" : [ "postal_code" ]
},
{
"long_name" : "Atlanta",
"short_name" : "Atlanta",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Condado de Fulton",
"short_name" : "Condado de Fulton",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Geórgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Atlanta, GA 30313, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 33.7815329,
"lng" : -84.38102889999999
},
"southwest" : {
"lat" : 33.743081,
"lng" : -84.40836689999999
}
},
"location" : {
"lat" : 33.7657549,
"lng" : -84.39493999999999
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 33.7815329,
"lng" : -84.3898749
},
"southwest" : {
"lat" : 33.743081,
"lng" : -84.40836689999999
}
}
},
"place_id" : "ChIJJQJalYEE9YgR8QEwdW22NnU",
"types" : [ "postal_code" ]
},
{
"address_components" : [
{
"long_name" : "Condado de Fulton",
"short_name" : "Condado de Fulton",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "Geórgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Condado de Fulton, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 34.1862889,
"lng" : -84.097692
},
"southwest" : {
"lat" : 33.502412,
"lng" : -84.850713
}
},
"location" : {
"lat" : 33.8033965,
"lng" : -84.3962535
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 34.1862889,
"lng" : -84.097692
},
"southwest" : {
"lat" : 33.502412,
"lng" : -84.850713
}
}
},
"place_id" : "ChIJ0dNnmHCr9YgRE8XXDotB0tc",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"address_components" : [
{
"long_name" : "Atlanta-Sandy Springs-Marietta, GA",
"short_name" : "Atlanta-Sandy Springs-Marietta, GA",
"types" : [ "political" ]
},
{
"long_name" : "Georgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Atlanta-Sandy Springs-Marietta, GA, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 34.617918,
"lng" : -83.505726
},
"southwest" : {
"lat" : 32.84464,
"lng" : -85.38647349999999
}
},
"location" : {
"lat" : 33.8498184,
"lng" : -84.43827210000001
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 34.617918,
"lng" : -83.505726
},
"southwest" : {
"lat" : 32.84464,
"lng" : -85.38647349999999
}
}
},
"place_id" : "ChIJ_fZgxcoC9YgRrGCAOeFGG7s",
"types" : [ "political" ]
},
{
"address_components" : [
{
"long_name" : "Atlanta Metropolitan Area",
"short_name" : "Atlanta Metropolitan Area",
"types" : [ "political" ]
},
{
"long_name" : "Georgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Atlanta Metropolitan Area, GA, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 34.6179238,
"lng" : -83.26913379999999
},
"southwest" : {
"lat" : 32.84464,
"lng" : -85.3865809
}
},
"location" : {
"lat" : 33.8498184,
"lng" : -84.43827210000001
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 34.6179238,
"lng" : -83.26913379999999
},
"southwest" : {
"lat" : 32.84464,
"lng" : -85.3865809
}
}
},
"place_id" : "ChIJfSgTeBYB9YgReUv3J84hbQI",
"types" : [ "political" ]
},
{
"address_components" : [
{
"long_name" : "Geórgia",
"short_name" : "GA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Geórgia, EUA",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 35.0006589,
"lng" : -80.751429
},
"southwest" : {
"lat" : 30.3555908,
"lng" : -85.60516490000001
}
},
"location" : {
"lat" : 32.1656221,
"lng" : -82.9000751
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 35.0006589,
"lng" : -80.751429
},
"southwest" : {
"lat" : 30.3555908,
"lng" : -85.60516490000001
}
}
},
"place_id" : "ChIJV4FfHcU28YgR5xBP7BC8hGY",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"address_components" : [
{
"long_name" : "Estados Unidos",
"short_name" : "US",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Estados Unidos",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 71.5388001,
"lng" : -66.885417
},
"southwest" : {
"lat" : 18.7763,
"lng" : 170.5957
}
},
"location" : {
"lat" : 37.09024,
"lng" : -95.712891
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 49.38,
"lng" : -66.94
},
"southwest" : {
"lat" : 25.82,
"lng" : -124.39
}
}
},
"place_id" : "ChIJCzYy5IS16lQRQrfeQ5K5Oxw",
"types" : [ "country", "political" ]
}
],
"status" : "OK"
}

但是当我尝试对 Java 客户端执行相同的操作时,我没有得到任何结果。我的代码:

public void loadAddress() throws ApiException, InterruptedException, IOException {
LatLng location = new LatLng(latCoordinate, longCoordinate);

GeoApiContext context = new GeoApiContext.Builder().apiKey("<APP_KEY>").build();
GeocodingApiRequest request = GeocodingApi.reverseGeocode(context, location);
GeocodingResult[] results = request.await();

int i = 0;
System.out.println("Results length: " + results.length);
for (GeocodingResult result : results) {
System.out.println("Result " + (++i) + ": " +result.formattedAddress);
System.out.println("Latitude: " + result.geometry.location.lat);
System.out.println("Longitude: " + result.geometry.location.lng);
}

}

控制台:

C:\Workspace\Java\GoogleAPITests>gradlew run
Task :run
Results length: 0

如你所见,request.await();没有返回预期值。有什么建议吗?

最佳答案

这里不是开玩笑,但是你的latCooperativelongCooperative在哪里设置的?它们不是这个公共(public)方法的参数,所以我假设它们是在某个地方设置的。也许可以在位置构造函数调用之前尝试 println

关于java - Google map Java 客户端 - GeocodingApi.reverseGeocode 不返回结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49845795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com