应用启动时在 android 谷歌地图中获取当前位置(纬度,经度)

Posted

技术标签:

【中文标题】应用启动时在 android 谷歌地图中获取当前位置(纬度,经度)【英文标题】:Get current location (lat,long) in android google map when app start 【发布时间】:2016-08-21 01:24:12 【问题描述】:

仅供参考: 我已经搜索了合适的答案,但找不到。它们中的大多数都是旧的并且使用了不推荐使用的方法。

我需要的是,当应用程序启动时,它会在当前位置显示带有标记的谷歌地图。我可以使用纬度和经度设置标记。但是,我找不到任何使用 GPS 获取当前经纬度的方法。

您能帮我用 GPS 获取当前的经纬度吗?

提前致谢。

【问题讨论】:

developer.android.com/guide/topics/location/strategies.html 【参考方案1】:

这是我用来获取当前 Lat-Lng 值的代码:

LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
Location location = locationManager.getLastKnownLocation(locationManager.getBestProvider(criteria, false));
double lat = location.getLatitude();
double lng = location.getLongitude();

希望这会对你有所帮助。

【讨论】:

为我返回 null【参考方案2】:

在此处查看我对类似问题的回答:https://***.com/a/52209682/9375838

使用这个: https://github.com/delight-im/Android-SimpleLocation

如果您的位置已启用,您只需要 3 行代码:

SimpleLocation location = new SimpleLocation(this); //or context instead of this
double latitude = location.getLatitude();
double longitude = location.getLongitude();

【讨论】:

【参考方案3】:

您可以使用 github 上提供的GPS Tracker。函数getLongitude()getLatitude() 将返回当前位置。

【讨论】:

不要使用这个类。它坏了,坏了。我们在这里收到关于为什么它不能一直返回正确结果的问题。我在gabesechansoftware.com/location-tracking 解释了它是如何损坏的 它对我有用,但我会考虑你的帖子。 它的工作时间百分比。但这是有缺陷的代码,不应该向其他人推荐

以上是关于应用启动时在 android 谷歌地图中获取当前位置(纬度,经度)的主要内容,如果未能解决你的问题,请参考以下文章

应用程序启动地图活动后,如何在 android 的地图中显示我的当前位置

打开android原生谷歌地图应用程序获取从当前位置开始的方向

Android 谷歌地图使用 GPS 定位而不是网络

Android:使用谷歌地图实时获取当前坐标

ANDROID - 谷歌地图获取当前位置

如何在android中的地图上显示当前位置标记?