我正在使用 MapView 在 map 上显示用户的当前位置。要在用户移动时更新位置,我必须做出选择:
- 我可以使用 MyLocationOverlay 绘制当前位置并扩展它以允许跟踪移动中的用户位置并具有自定义标记。 MyLocationOverlay 的问题是我无法控制设备从 GPS 请求位置的频率。我担心这里的电池会耗尽。
- 我可以使用位置管理器并使用 requestLocationUpdates 进行订阅以从 GPS 获取位置。在这里,我可以更好地控制查询 GPS 的频率。我可以连接一个 LocationListener 并在其中编写代码。
但我在 SO 上读到,使用 Location Manager 和 MyLocationOverlay 可能不是一个好方法,应该优先于此。
另外,考虑到我的应用是一个基于位置的应用,用户的位置应该在他移动时被跟踪。
人们能否建议哪种是最好的实现方法,并且对电池的影响相对较小。
请注意,我是 Android 的初学者,所以请原谅任何明显的错误。
先谢谢你, 安迪
最佳答案
我使用 Little Fluffy Location - 它是一个库,你可以设置更新时间或距离,这个库制作一个广播接收器,实现 LocationListener,当位置改变时通知你的应用程序。
简单、快速、容易!
请引用this链接:
位置更改后,更新您在 map 上的叠加层! =)
如果您需要,我会发送完整的位置解决方案。
关于android - MyLocationOverlay 或 LocationManager 用于更新当前位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11342449/