检测phonegap中的假/模拟位置?

时间:2014-01-06 19:43:15

标签: android iphone cordova gps phonegap-plugins

我想将phonegap用于移动地理定位应用,我注意到那里有一些假gps应用。在phonegap中是否有办法确定来自api的gps坐标是真的还是真的是真的?

假冒位置应用示例:

https://itunes.apple.com/us/app/fake-location/id431065024

https://play.google.com/store/apps/details?id=com.lexa.fakegps

2 个答案:

答案 0 :(得分:2)

  1. 检查ALLOW MOCK LOCATION中的Developer options是否已打开
  2. 检查是否有任何在Manifest.xml中声明android.permissions.ACCESS_MOCK_LOCATION的应用

    即便如此,你也无法处理所有情况。例如,如果您将https://play.google.com/store/apps/details?id=com.lexa.fakegps放入/system/priv-app,您会发现它可以在没有ACCESS_MOCK_LOCATION的情况下模拟位置,以及它如何模拟位置this,因此您很难检测到ALLOW MOCK LOCATION

    的变化

    所以你可以尝试下面这些:

    1. 设计一种基于GPS定位的算法,检测用户移动过快或异常。
    2. 使用IP或基站来帮助您检测是否使用了模拟位置,因为IP或基站很难改变。

答案 1 :(得分:1)

我制作了this插件,用于检查Android上的开发者选项中是否启用了“允许模拟位置”设置。