2014-01-06 55 views
4

我想用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

+1

嗨德里克,你有没有发现,因为什么? – QuentinB

+0

请检查我的答案,@QuentinB,我的答案可能会帮助你。 – PageNotFound

+0

https://github.com/tomloprod/cordova-plugin-felocation – tomloprod

回答

1
  1. 检查ALLOW MOCK LOCATIONDeveloper options是否打开
  2. 检查是否存在在的Manifest.xml
  3. 声明 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

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