【发布时间】:2016-09-07 14:05:07
【问题描述】:
我安装了一个虚假的位置应用程序并将我的位置设置为不同的。然后打开谷歌地图和微信app,
- 谷歌地图显示我的位置是我设置的(假的)
- 微信应用忽略虚假位置并检测真实位置(如何?)
然后我想阻止微信分析我以前收到的真实位置和新的假位置。
- 已卸载微信
- 重启了我的设备
- 将我的位置设置为假的
- 再次安装微信
但同样的结果,它会检测到我的真实位置。
我真的很想了解他们是如何做到这一点的。有什么想法吗?
我的尝试
- Gps 提供商欺骗
- 网络提供商欺骗
- 融合位置提供者欺骗
- IP 地理位置欺骗
- Gps 提供商欺骗 + IP 地理位置欺骗
更新
即使在禁用时也使用 GPS。
07-02 11:46:15.504 2346-2356/? D/LocationManagerService:从com.tencent.mm(10173)请求434a7e28 gps Request[ACCURACY_FINE gps requested=+1s0ms fast=+1s0ms]
结论
- 您可以在旧版微信(低于 6.0)上伪造位置
- 使用百度定位SDK之类的东西。它不受任何通过 LocationManager 和 Fused 提供程序进行的模拟尝试的影响。
- 我不确定,但是,BaiduLocationSDK 似乎通过硬件级别使用 GPS。
【问题讨论】:
-
我想知道它是否取决于应用程序用来获取位置的 api。据推测,谷歌地图将使用 google play api,就像大多数使用位置的应用程序一样。微信可能正在使用本机 sdk 中的 android 位置管理器,并且可能不受虚假位置应用程序的影响。试一试。
-
我们可以理解接收到的位置是假的还是真的,没有问题。问题是微信如何检测真实位置,而 LocationManager 和 FusedLocationProvider 提供固定的假位置。
-
反对者,这个问题有什么问题?
-
@Blackkara 您是否在 API 23 设备上进行测试,其中删除测试提供程序不起作用?当您试图伪造并实际移动时,微信是否仍会检测到您的位置(即您的虚假位置不会改变,但真实的位置会改变,并且微信可以检测到这一点)?
-
@Timur_C 我发布了第二个回复。这也间接回答了您的问题。
标签: android location android-gps