2017-07-26 40 views

回答

1

有几乎没有办法来验证您的GPS读数的正确性。但是,您可以使用以下解决方法来检测可能的欺骗:

首先,您可以检测他们的模拟位置设置是否处于打开状态(GPS伪装应用程序常用)。为此,查找Settings.Secure.ALLOW_MOCK_LOCATION)设置并检查它是否启用。然后检查哪些应用程序具有该权限(即android.permission.ACCESS_MOCK_LOCATION)。如果存在使用该权限的应用并且该设置处于打开状态,那么它们可能会伪造用户的位置。

您也可以尝试使用Location.isFromMockProvider,但我不确定结果有多准确。如果您正在检查的位置是通过GPS伪造应用程序获取的,则该函数返回true。

0

我不知道,但如果有人想给假的GPS位置,他需要有根深蒂固的手机。所以你可以检查,如果有人已经扎根电话,那么不要相信他/她的位置。要检查电话根植:link

+0

当然,单独生根并不一定意味着你伪造你的位置。这几乎就像是说“如果这个人有枪,他可能是一个杀手”。从用户听觉中排除所有根深蒂固的手机是一项重大的成果,如果您能够提供帮助,我不建议采取自己的做法。而不是检查,手机是否扎根,我建议检查,是否启用GPS伪装的选项(请参阅我的答案了解详情) – altskop