我们在Android上使用osmbonuspack的API从巴塞罗那的地址获取geocordinate。我们正在调用org.osmdroid.bonuspack.location.GeocoderNominatim类和方法getFromLocationName()
当我们搜索地址 Desemparats 18 时,它不会返回任何结果。但是如果我们搜索 Desemparats ,那么我们得到1个结果。来自JSON响应:
{
"place_id":"9805611",
"licence":"Data © OpenStreetMap contributors, ODbL 1.0. http:\/\/www.openstreetmap.org\/copyright",
"osm_type":"node",
"osm_id":"961073607",
"boundingbox":[
"41.3705229",
"41.3706229",
"2.1225643",
"2.1226643"
],
"lat":"41.3705729",
"lon":"2.1226143",
"display_name":"Mare de Déu dels Desemparats, Carrer Mossèn Jaume Busquets, la Torrassa, l'Hospitalet de Llobregat, BCN, Catalonia, 08094, Spain",
"class":"amenity",
"type":"place_of_worship",
"importance":0.101,
"icon":"http:\/\/nominatim.openstreetmap.org\/images\/mapicons\/place_of_worship_unknown3.p.20.png",
"address":{
"place_of_worship":"Mare de Déu dels Desemparats",
"pedestrian":"Carrer Mossèn Jaume Busquets",
"suburb":"la Torrassa",
"town":"l'Hospitalet de Llobregat",
"county":"BCN",
"state":"Catalonia",
"postcode":"08094",
"country":"Spain",
"country_code":"es"
}
}
似乎该服务没有此街道的街道地址数据,因此它只在街道上提供了一个随机点。 Desemparats 18 返回没有结果的原因是因为它试图将 18 与邮政编码匹配。
我们可以做些什么来获得更准确的回复吗?即,能够搜索街道/门牌号码的地址吗?
或者问MapQuest,巴塞罗那数据真的不够丰富吗?因为这个地址真的不是遥远的。
任何人的任何想法和经验都将受到赞赏。
答案 0 :(得分:0)
OSM确实只有this area中的地址非常少。除improving it yourself之外,您无能为力。如果首选地理编码器无法返回有效结果,您可以使用第二个地理编码服务作为后备。