获取用户';s位置Android

获取用户';s位置Android,android,location,google-play-services,Android,Location,Google Play Services,我正在寻找获取用户位置的最佳方法。我发现有两种主要方式: 使用谷歌的com.google.android.gms.location.LocationListener 游戏服务 使用android API中的android.location.LocationListener 我的问题很简单:哪一个是最好的? 目前,我正在使用第一个,但我面临的问题是:当使用手机网络时,我的位置永远不会被检索到 谢谢你的帮助。我的建议是第一个com.google.android.gms.location.Loca

我正在寻找获取用户位置的最佳方法。我发现有两种主要方式:

  • 使用谷歌的
    com.google.android.gms.location.LocationListener
    游戏服务
  • 使用android API中的
    android.location.LocationListener
我的问题很简单:哪一个是最好的?

目前,我正在使用第一个,但我面临的问题是:当使用手机网络时,我的位置永远不会被检索到


谢谢你的帮助。

我的建议是第一个com.google.android.gms.location.LocationListener从代码中提取fid位置。
有关示例代码,请参阅。我可以使用手机网络或wifi。我是android的开发者之一。我们在开发过程中确实研究过这个api,但发现在大多数情况下使用
android.location.LocationListener
是合适的。另一个接口要复杂得多,需要更长的时间才能实现。我建议
android.location.LocationListener

接口提供给您的
Location
类提供了许多方法,您可以使用这些方法获取纬度、经度、速度、到另一点的距离、方位等

同时查看
GpsStatus.Listener
GpsStatus.nAlistener

关于卫星的数据。

虽然这篇文章确实很老,但我认为我应该回答它,以便它也澄清我在这方面的概念。请参阅以下链接:

https://developers.google.com/maps/documentation/android/location
它说:

请注意,“我的位置”层不返回任何数据。 如果希望以编程方式访问位置数据, 使用位置API


因此,我认为使用google Play Services中的com.google.android.gms.location.LocationListener可能是一种更简单的方法,但如果您想访问位置数据(在我的例子中就是这样)并想对其进行处理,那么最好使用android API中的android.location.LocationListener选择第一个选项的唯一原因是什么?谢谢我读过你的代码,也有类似的东西。嘿,别忘了下载应用程序。(**你错了,com.google.android.gms.location.LocationListener更容易使用,我不关心速度和距离..我只是想用最简单的方法获取用户的位置。首先,这是一个意见问题。其次,你只需要location.getLatitude()location.getLength()这只需要11行就可以完成。进行研究,如果你想从网络中定位,你只需定位管理器.network\u提供者,而不是定位管理器.GPS\u提供者。刚刚发现有人可以在8行中完成。还有第三行需要考虑:
com.google.android.gms.maps.LocationSource.OnLocationChangedListener
已更改
onLocationChanged
方法。