在Android中使用Google Maps API显示当前位置和附近的地点以及两个地点之间的路线

时间:2011-12-08 08:33:45

标签: android google-maps google-places-api

我需要在Android中使用Google Maps开发一个应用程序来找到我的当前位置并需要找到最近的位置

(例如:从我当前位置附近的警察局。)

它应该接受我当前的位置,输出应该显示在最近的位置。

任何人都可以帮我提一些建议,链接,教程吗?

4 个答案:

答案 0 :(得分:148)

  1. 首先通过 this tutorial 来熟悉 Android版谷歌地图和 API 2

  2. 要查看设备的当前位置,请参阅 this answer 或此 another answer 以及 API 2

  3. 然后,您可以使用 Google Place API 获取您所在位置附近的地点,并使用Place Api查看 this blog

  4. 获取位置附近的地标后,使用 this blog with source code 在地图上显示标记,并使用API​​ 2进行气球覆盖。

  5. 您还可以在地图上的两个点之间绘制路线 在这些链接中查看 Link1 Link2 以及此Great Answer

  6. 按照这些步骤操作后,您可以轻松完成申请。唯一的条件是,你必须阅读并理解它,因为像魔术一样,它不会在点击中完成。

答案 1 :(得分:13)

到目前为止,很多答案都是API和教程的优秀指针。我想补充的一件事是,我使用类似的东西计算标记距离我的位置的距离:

float distance = (float) loc.distanceTo(loc2);

希望这有助于改善问题的细节。它返回点之间距离(​​以m为单位)的粗略估计,对于摆脱可能距离太远的POI非常有用 - 这对于整理地图有好处吗?

答案 2 :(得分:6)

您可以在这里使用谷歌地图Obtaining User Location

获取您的位置(经度和纬度)后,您可以使用google place api

此代码可以帮助您轻松获取您的位置,但不是最佳方式。

locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
String bestProvider = locationManager.getBestProvider(criteria, true);
Location location = locationManager.getLastKnownLocation(bestProvider);  

答案 3 :(得分:5)

您有两种显示地图的选项

  1. 使用Android版地图库渲染地图
  2. 在网络视图中使用Maps API V3
  3. 要显示Lat周围的本地POI,请长期使用Places APIs