安卓 5.x 和 6.x,设置里关闭了定位, app 请求定位的权限也关了,为何微信、QQ、支付宝还能定位出来??

2016-09-25 05:11:25 +08:00
 qceytzn

设置里的定位服务关闭自然不用说,再加上 xprivacy 限制了所有程序的定位权限,但是,微信 QQ 支付宝依然能定位出来,还不像是依据 ip 定位的,在家的时候连着 wifi 然后重启路由换了 IP 依然是很准确的定位,甚至,连着 VPN ,还是准确的定位,怎么了这是?我在 4.x 的系统上都能让这些软件完全定位不出来的,请问如何在 5.x 、 6.x 的系统上完全关闭定位??

23439 次点击
所在节点    Android
34 条回复
xupefei
2016-09-25 05:27:40 +08:00
有时候是根据历史位置推算的:我现在在国外, QQ 和微信都说我在国内家里,无论多少次刷新都是这样。
qceytzn
2016-09-25 05:36:44 +08:00
@xupefei 有所谓的“定位缓存”吗?这个是安卓系统缓存的定位还是各个 app 保存的?如果确实有这种缓存能删干净吗??如果不能把这种还不知道是否真的存在的“定位缓存”删干净并且再实验一下的话我还是不放心啊!
ltux
2016-09-25 06:08:06 +08:00
扫描你周边的 WIFI 热点的 MAC 地址,即可定位。设备 IP 会变,某个地区的接入点通常不会变。事先用 GPS 设备和 WIFI 设备建立经纬坐标和 MAC 地址之间的大致对应关系,以后只需扫描周围接入点的 MAC 地址也就能定位了。这事儿谷歌干了好多年了,当年谷歌街景车边拍风景边扫描沿途的 WIFI 。
你需要用 adb shell appops 命令 ignore 相应 app 的 ACCESS_WIFI_STATE 和 CHANGE_WIFI_STATE 权限。
xupefei
2016-09-25 06:08:14 +08:00
@qceytzn 我体感是各个 APP 保存的。具体能不能删干净就不知道了,因为 APP 可能会把定位上传到服务器上。
pmpio
2016-09-25 06:38:51 +08:00
国内的 app 大都更喜欢基站定位,你把手机卡拿掉试试。。。。。
hjklb
2016-09-25 08:00:36 +08:00
只要给 Wifi 权限或者电话状态就能精确定位到你。
可以安装相关 Xposed 模块来解决。
jiezhi
2016-09-25 09:14:56 +08:00
安卓是有个接口拿到上次已知的地理位置,不过也不排除通过网络定位的,楼主跑远一点试试呢
gdtv
2016-09-25 09:51:27 +08:00
有些 app 你禁止读取短信权限他还是能读取的
vmebeh
2016-09-25 10:21:44 +08:00
疼讯应该有能力收集 附近 SSID-IP-GPS 关系的能力,只要附近网络有可信度比较高的记录出现,就能实现通过 IP 精确定位,即使不通过 ISP 。

实例:新装的宽带,打开百度地图直接定位到比较精确的位置
ltux
2016-09-25 10:23:11 +08:00
我“想当然”了。
并不能控制那俩权限。应该是 WIFI_SCAN
shenfu1991
2016-09-25 10:26:47 +08:00
网络就能定位啊,搜索本机 ip ,不就知道你所在城市了
snsd
2016-09-25 10:33:14 +08:00
@shenfu1991 有些地方 ip 轮巡,同一个省(区)今天把这个 ip 给某个城市用,可能过几个月又换给另一个城市用了
ericls
2016-09-25 10:35:16 +08:00
根据周围 wifi 的名称可以精确定位
BURNER
2016-09-25 10:37:46 +08:00
我开着 vpn qq ,微信照样定位
SourceMan
2016-09-25 10:48:44 +08:00
基站, WiFi ,这些辅助地位都可以读取到你大概的位置
ipconfiger
2016-09-25 10:53:13 +08:00
总结起来就是 基站, WIFI, 大数据
wxf04125
2016-09-25 11:14:13 +08:00
学习了,说到底,定位只是获取位置信息的一个手段而已,两者不能划等号
twoyuan
2016-09-25 11:27:54 +08:00
百度定位的 SDK 就自带怎么都能定位的属性,被测试提了 N 遍「为什么关了定位还能定位」的 bug 了……
honeycomb
2016-09-25 11:35:38 +08:00
位置权限关掉还是可以拿到已经连接的路由器 bssid/SSID ,光这两个就可以提供很好的位置信息了。

尝试断开路由器再试试。

而且你有 xprivacy ,是可以找到它们调用的所有 API 的
honeycomb
2016-09-25 11:40:23 +08:00
@ltux

appops 里没有 ACCESS_WIFI_STATE 或者 CHANGE_WIFI_STATE 这两个 op

禁用定位权限以后应用是不能调用查看 WiFi 扫描结果的 API 的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/308771

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX