android - 保护您的 Android 应用免受模拟位置的影响

标签 android geolocation location android-location

我正在设计一种基于位置的服务,其中可靠性起着重要作用。 我希望我的用户知道其他用户提供的位置是真实的。

我稍微研究了一下模拟位置,并注意到这个 thread应用程序 LocationSpoofer .我目前没有获得 root 权限的手机,但它指出,当获得 root 权限时,即使没有设置,它也可以模拟位置。

有什么已知的方法可以防止这种情况发生吗?我可以使用一些简单的启发式方法来验证用户没有在 30 分钟内从法国旅行到夏威夷,但我宁愿得到完整的保护。

提前致谢!

最佳答案

而不是长评论:

“可靠性很重要”

只要您为“可靠的”输入提供可靠的输出,我认为您无需处理“欺骗”或伪造的输入就可以了。如果您将数据存储在持久存储中,您可以处理“可疑”数据的情况。

即定义场景并将其应用于您的数据,以识别“用户在 30 分钟内从法国前往夏威夷”等案例,并以适当的方式处理此类案例。或者您甚至可以拒绝不切实际的数据。

关于android - 保护您的 Android 应用免受模拟位置的影响,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5203936/

相关文章:

android - 从 android Geocoder 获取波斯语信息

angularjs - 如何根据用户位置(而不是 html5 地理定位)将谷歌地图居中? ( Angular JS)

PHP 计算到用户的最短路线(最快?)

android - 错误: package PermissionUtils does not exist

android - 将Ogg文件上传到Android中的音频流

Android:lockCanvas() 和 lockCanvas(null) 有什么区别?

java - 如何对 Android RxJava 多线程进行单元测试

java - 如何让一个 Android 类等待另一个类完成它的任务?

android - getLocationUpdates() 在 4.0 模拟器上给出非法参数异常

android - 我如何保存我当前的位置?