使用诺基亚此地理编码服务时,在searchText搜索时会忽略State参数:315 NE 14th Street,State:FL and Country:US。
唯一返回的结果是在路易斯安那州的一个位置。将状态添加到searchText的末尾也不起作用。
Google和MapQuest正确地将结果返回佛罗里达州。客户不希望包含城市,而是包括地址,州和国家。
我知道诺基亚Here Here算法不会像Google和MapQuest那样过滤掉,但预计包含State参数会强制搜索结果。
答案 0 :(得分:0)
您可以尝试设置搜索区域,以便进一步缩小搜索范围。以下 Android 示例将在佛罗里达州霍姆斯特德市返回一个结果:
String query = "315 NE 14th Street Florida US";
GeocodeRequest geocodeRequest = new GeocodeRequest(query);
GeoCoordinate areaCenterCoordinate = new GeoCoordinate(27.82353, -81.760254);
geocodeRequest.setSearchArea(areaCenterCoordinate , 15000);
根据文档GeocodeRequest
处理文本字符串查询,因此我相信您可以省略州或国家/地区参数,并添加州或国家/地区作为搜索字词的一部分。请注意,如果所有结果都与给定的搜索字词匹配,则可以返回多个结果。
可以找到有关如何使用GeoCoder的示例here。
根据您的使用情况,可以考虑使用SearchRequest
代替。如果这不起作用,如果您可以在问题中提供更多详细信息,例如您指的是什么API风格。