是否可以拥有搜索功能 - 例如在操作栏中 - 可以在Google地图片段中搜索街道名称?我正在开发一个应用程序,这将是非常有用的。如果应用程序可以导航到该位置。
答案 0 :(得分:6)
是的,你可以借助Geocoder课程。 AFAIK内置的Android Geocoder依赖于ESRI的地理编码Web服务。
Geocoder geocoder = new Geocoder(this);
List<Address> addresses = null;
try {
// Find a maximum of 3 locations with the name Kyoto
addresses = geocoder.getFromLocationName("Kyoto", 3);
} catch (IOException e) {
e.printStackTrace();
}
if (addresses != null) {
for (Address loc : addresses) {
MarkerOptions opts = new MarkerOptions()
.position(new LatLng(loc.getLatitude(), loc.getLongitude()))
.title(loc.getAddressLine(0));
mMap.addMarker(opts);
}
}
注意:
修改强>
基于esri's arcgis developer website,Geocoder依赖于ESRI的网络服务。我也对此感到惊讶,但这有点意义,因为谷歌的地理位置API有局限性,而Android({1}}位置功能没有(我不知道)限制