
不知道你有没有过这种极其诡异的经历。
周末去逛商场,尤其是那种地下好几层、连手机通话信号都断断续续的超级大商场。你特意把手机的 GPS 定位关了,蓝牙也关了,甚至连 Wi-Fi 都没连,就想安安静静逛个街。
结果你刚在一家咖啡馆门口站了三十秒,掏出手机一看,某点评或者外卖 App 弹出来一条通知,「欢迎光临某某咖啡 B2 旗舰店,送你一张专属优惠券」。
更离谱的是,你点开室内地图,那个代表你的小蓝点,居然不偏不倚,就严丝合缝地停在那家咖啡馆的柜台前。
我当时第一次遇到这事,整个人都懵了。
第一反应是,见鬼了,难道天上的卫星装了透视眼???
但稍微懂点物理的朋友都知道,这绝不可能。天上的 GPS 或者北斗卫星,在两万公里高空发射的无线电信号弱得像一根火柴,穿过大气层本来就快耗尽了,碰到商场头顶几十米厚的钢筋混凝土、地下管网和防空层,信号衰减直接超过 30 分贝。在地下商场里,你的手机连一颗卫星都抓不到,更别说算三角定位了。

那手机到底是怎么在两米之内抓住你的?
答案藏在你每天都在用、但几乎从没注意过的一个微型传感器里,手机指南针。
很多朋友可能不知道,真正出卖你精准位置的,不是天上的卫星,而是你脚下的钢筋混凝土,和地球磁场打的一场「配合战」。
地球本身是个大磁铁,地表上每一处的地磁场本来是非常平滑、均匀的。但是,当人类用几万吨螺纹钢、铸铁电梯井、变压器和厚重的钢梁盖起一座巨大的商场时,有意思的事情发生了。
这些海量的钢铁结构,会硬生生把穿过建筑的地球磁场给扭曲、挤压、撕扯变形。
在商场里,每一根承重柱旁边、每一截扶梯拐角、每一家店铺的收银台前,磁场的强弱和三维方向都是完全不一样的。这就好比商场在盖好的那一刻,地底下的钢铁骨架,就已经在整个空间里印上了一张独一无二、肉眼看不见的三维「地磁条形码」。

定位技术公司会先派人拿着专业设备在商场里走一圈,把整栋楼的磁场畸变数据全扫一遍,存成数据库。
当你揣着手机走进商场,哪怕你断了网、关了 GPS,你手机主板上那个几毫米大的磁力计芯片,只要跟着你走上两三步,就能读出周围磁场的细微起伏。算法就像扫条形码一样,把读到的磁场数据往数据库里一比对,瞬间就能算出你正站在哪家店的几号柜台前。
精度能直接压到一两米以内。
甚至连你在几楼,手机都门儿清。
现在的手机里基本都塞了一颗微型气压计芯片,比如博世的传感器,灵敏度能精确到 0.1 百帕。0.1 百帕是个什么概念呢,差不多就是八十厘米的高度差。你从扶梯上一层层走上去,周围空气气压发生极其微弱的起伏,手机算法结合加速度计的步伐积分,立刻就知道你从 B1 到了 3 楼。

至于 Wi-Fi 探针和商场天花板上的蓝牙信标,那都属于给地磁定位打辅助的「补刀选手」。只要你的手机网卡还没进飞行模式,它就会在后台偷偷向外喊话寻找信号,天花板上的 AP 阵列通过信号往返时间和强弱,顺手就把你的驻留时长给算了出来。
为了这套室内定位,手机厂商和商业 SDK 之间其实打了很多年的暗战。
苹果在 iOS 里强推了硬件 MAC 地址随机化,安卓也把后台传感器的读取权限一卡再卡。但道高一尺魔高一丈,搞商业定位的工程师们早就把目光从单纯的「网络权限」,转向了那些物理世界的天然特征。
你想想看,这事其实挺带感的。
我们总以为数字世界的定位,是一场高大上的卫星与光纤游戏。结果到头来,把你在虚拟世界里标注得明明白白的,居然是头顶冰冷的钢梁、脚下的地磁,以及空气中那一丝微不可察的气压。
你以为你关掉了屏幕上的开关就隐身了,但在物理定律面前,只要你还在呼吸、还在走动,整个建筑就已经为你写好了坐标。