关于微信定位技术的一些思考

时间:2021-10-17 15:02:31
最近我发现微信定位相当牛x。。
即使没有开 gps,流量或wifi,其依然能知道手机所在的位置
我猜想其原理应该是 透过计算 手机 与 周围 基站的 距离,并根据基站所在的 经纬度 计算出手机的距离的。
从数学上而言,两个 固定圆心,固定半径  的 圆 ,其交点是唯一的。因此,只要知道 手机 距离两个 或 两个以上的基站的距离(半径) ,就能根据  基站位置(圆心)  计算出手机所在的位置。

关于 基站位置 的获取方法有很多,可以向 电信/移动购买,也可以自己开车扫描获取,黑市也能买到。。

但关键问题在于。微信是怎么知道其距离基站的距离的呢?

理论上说,我们可以透过    距离=光速*响应时间  的方法来计算距离。
但问题在于 响应时间 的计算是如何实现的呢?

我们 向基站 发送请求信号,并记录 发送 和 接收回应 的时点,从而得出 响应时间。但这里有个问题是

基站一定是接收到  请求信号 就马上反馈吗?万一基站的设定是  接收到请求信号,然后 延迟100毫秒才回应呢?那么公式就得修正了。。
究竟基站延迟多少,除了电信,移动这些基站机构者知道外,对于其他用户而言基本是随机的啊。。。
既然微信不知道基站处理请求所耗费的时间,他又是如何确定手机与基站的距离的呢?



另外一个思路是透过计算 场强 的衰减度而获得 基站的距离。。但这个随机性就更大了。。因为单位距离内的衰减量跟周边环境有很大关系,,

说来说去,究竟 腾讯 是如何获得距离基站的距离的呢?

7 个解决方案

#1


“即使没有开 gps,流量或wifi”,那微信是怎么联网的?

#2


建议你搞清楚一点,在大城市里,基站的范围有多大?如果你这个理解错了,那么就想的太多了。另外,移动公司10年前就提供LBS服务,而且甚至它也是 HTML5 标准功能,你想的太多了。

#3


引用 1楼以专业开发人员为伍 的回复:
“即使没有开 gps,流量或wifi”,那微信是怎么联网的?
不好意思,原来我测试时开了GPS,但自己没发现

#4


引用 1楼以专业开发人员为伍 的回复:
“即使没有开 gps,流量或wifi”,那微信是怎么联网的?
另外,微信即使没有联网也能查询自己的位置,只要有GPS就OK了,联网的目的只是共享位置罢了

#5


引用 2楼以专业开发人员为伍 的回复:
建议你搞清楚一点,在大城市里,基站的范围有多大?如果你这个理解错了,那么就想的太多了。另外,移动公司10年前就提供LBS服务,而且甚至它也是 HTML5 标准功能,你想的太多了。
请问如何使用移动的LBS服务?是要登陆网站还是下载相关app?

#6


你把它过分妖魔话了

#7


引用 6楼forrg 的回复:
你把它过分妖魔话了
原来我的GPS是开着的,只是我一直没发现,以为没开。关了GPS后微信无法定位。是的,我的粗心大意将其神话了,还以为发现什么新大陆

#1


“即使没有开 gps,流量或wifi”,那微信是怎么联网的?

#2


建议你搞清楚一点,在大城市里,基站的范围有多大?如果你这个理解错了,那么就想的太多了。另外,移动公司10年前就提供LBS服务,而且甚至它也是 HTML5 标准功能,你想的太多了。

#3


引用 1楼以专业开发人员为伍 的回复:
“即使没有开 gps,流量或wifi”,那微信是怎么联网的?
不好意思,原来我测试时开了GPS,但自己没发现

#4


引用 1楼以专业开发人员为伍 的回复:
“即使没有开 gps,流量或wifi”,那微信是怎么联网的?
另外,微信即使没有联网也能查询自己的位置,只要有GPS就OK了,联网的目的只是共享位置罢了

#5


引用 2楼以专业开发人员为伍 的回复:
建议你搞清楚一点,在大城市里,基站的范围有多大?如果你这个理解错了,那么就想的太多了。另外,移动公司10年前就提供LBS服务,而且甚至它也是 HTML5 标准功能,你想的太多了。
请问如何使用移动的LBS服务?是要登陆网站还是下载相关app?

#6


你把它过分妖魔话了

#7


引用 6楼forrg 的回复:
你把它过分妖魔话了
原来我的GPS是开着的,只是我一直没发现,以为没开。关了GPS后微信无法定位。是的,我的粗心大意将其神话了,还以为发现什么新大陆