您禁用了WiFi和GPS,但仍打開了蜂窩數據。這意味著電話正在與本地蜂窩塔通信。 Android使用手機信號塔地理位置來估算您的當前位置。
每個手機信號塔都有一組ID號,可將這些ID標識給手機。它會不斷廣播其身份,以便手機在走動時可以與其連接。蜂窩塔天線是定向的,每個塔大約服務於三個不同的區域。您可以將它們看作是三個餅形的楔形,其中細胞塔位於餅的中心。每個楔形物都是一個“小區”(這就是該技術的名稱。)
為這些小區服務的每個無線電都使用一定量的功率進行發射-您離發射塔越近,手機收到的信號越強,反之亦然。您的手機使用接收到的信號強度來節省電池。蜂窩塔越遠,手機傳輸到它的功率就越大。因此,手機始終試圖鎖定最強的信號,以便它可以使用最少的功率進行傳輸。觀察信號的一種更有用的方法是,接收到的信號強度代表到蜂窩塔的粗略距離。
現在,讓我們想像一下,該蜂窩形狀像一塊楔形,接收到的最強信號最接近蜂窩塔。塔,距離塔最遠。想像一下,將楔形餅切成環形的塔狀曲線,在最近的切片中信號強度很強,而在最遠的切片中信號強度最弱。它看起來(非常)大致是WiFi徽標。這些切片中的每一個切片代表地球上的某個微小區域,而您正站在其中一個區域。
如果您位於人口稠密的地區(例如城市),則您的手機通常會從一個以上的手機塔因此,可以想像來自A塔,B塔,C塔和D塔的重疊切片的交點。交點處的面積越來越小。
那麼Google如何知道這些單元格,楔形,切片和交點的位置?從數十億個打開了GPS的Android手機(包括打開GPS的您的手機)中,不斷發送有關其GPS位置以及看到的信號塔和信號強度的報告。 Google已使用此數據來繪製每個單元的位置以及每個點的近似信號強度。他們在服務器上擁有一個龐大的數據庫,其中包含這些信息。您的手機通過發出網絡請求來列出該範圍內的所有手機發射塔,從而查詢該數據庫。Google服務器會以您的估計位置進行響應。
當然,因為無線電信號實際上並不是在完美的小巧楔形中傳播的,它們會從建築物和汽車上反彈,因此會被樹木,牆壁,霧氣,雲朵和人所吸收。每天都有新的蜂窩塔來去去去,因此無線電發射機的格局也經常在變化。數百萬份報告僅產生平均GPS坐標。但這沒關係,因為即使不完善的位置數據也足以滿足大多數用戶的需求。
最後,為了獲得更高的準確性,手機上的Google Play定位服務軟件會保持跟踪手機的最後一個已知位置,並可以藉此更好地估算您的當前位置。特別是,最後一個已知位置是對當前位置的合理估計(根據啟發式信息,自上次查詢位置以來,您可能沒有移動過)。如果這似乎與手機信號塔信息保持一致,則可以使用它來提高您估計的位置的準確性。