安卓系统getLastKnownLocation不更新。

问题描述 投票:0回答:1

我正在制作一个获取用户位置的应用程序,为此我使用getLastKnownLocation,问题是,如果我将虚拟手机的位置改变到其他地方,getLastKnownLocation,仍然给出相同的位置,只有当我打开谷歌地图时才会更新.有什么办法可以获得设备的实际位置吗?

android gps location
1个回答
1
投票

的行为。LocationManager.getLastKnownLocation 你所描述的正是这种方法的方法。确定的:

从给定提供者处获取最后已知的位置,如果没有最后已知的位置,则为空。在某些情况下,返回的位置可能很旧,因此应始终检查该位置的年龄。 这将永远不会激活传感器来计算新的位置,只会返回一个缓存的位置。

因此,如果使用任何其他应用程序请求实际位置(如谷歌地图),缓存值会被刷新,您可以通过 getLastKnownLocation.

如果你想主动检索一个新的位置,你应该使用 getCurrentLocation 或继续使用 getLastKnownLocation 但在调用它之前,会强制更新位置。requestSingleUpdate

© www.soinside.com 2019 - 2024. All rights reserved.