我有一个应用程序,它设置了两个位置监听器(一个用于GPS,一个用于网络),然后从可用的最佳位置(应该是GPS)中选择位置。但是,如果打开GPS,它将始终选择GPS位置,即使此人在室内启动应用程序。这导致GPS位置被使用,即使最后已知的GPS位置距离数英里远,网络位置实际上更准确。
是否有任何解决此问题的方法,或者只是需要接受使用GPS& amp;网络?标准做法只是假设GPS总是更准确,即使在某些情况下它可能不是这样吗?
答案 0 :(得分:0)
如果您使用网络提供商来获取位置,则与GPS相比,它们不是非常准确。因此,当您在室内时,使用网络提供商获取您的位置准确性可能是一个好主意,因为GPS在室内运行良好,您可以使用GPS在户外时获取位置更新。
您可以使用Location类的GetAccuracy()方法并查看它返回的值。假设如果getAccuracy()重新生成25,则可以将此值等待另一个gps值,直到获得所需的值。记住它返回的值是以米为单位的圆的半径。