很多嘗鮮 iOS 14 的用戶,在升級完成後會遇到 App 請求一個名叫「Local Network(本地網路)」的許可權。
iOS 14 新增的「Local Network(本地網路)」許可權提醒
相信大家對這個許可權有很多疑問:本地網路許可權是什麼?為什麼要對它做出限制?以及哪些應用真的需要這個許可權?這三個問題將在本文里得到解答。
本地網路許可權是什麼,為什麼要限制?
本地網路(區域網)
本地網路也叫區域網,是將設備接入路由器以後形成的網路,設備可以通過這張網路互相通信,讓你可以在手機上將歌曲從無線音響里播放出來,在公司用公共印表機列印文檔,在朋友家一起用 Switch 聯機打遊戲。
從 iOS 13 開始,應用想要獲得當前連接到的 Wi-Fi 名稱,那就必須要獲得定位許可權。因為通過識別 Wi-Fi 名稱, 應用就能輕鬆地在你和周圍的人之間建立大數據網路。但是不給定位許可權不代表應用就沒有辦法跟蹤你了,因為應用可以通過本地網路里的設備進行跟蹤。
可以通過 MAC 地址識別特定的區域網
在過去的 iOS 版本中,應用可以隨意掃描本地網路中的設備,因此應用就可以很輕鬆地得到本地網路里所有設備的名稱和 MAC 地址。MAC 地址是一種確認網路設備位置的地址,每個網卡都有一個唯一的 MAC 地址,加上 MAC 地址也具有唯一性,設備廠商會按照一定的規律分配 MAC,所以不同的區域網都是獨一無二可以識別的。
這樣就通過 MAC 地址和設備的名字以生成一個特定的「指紋」,持續地、跨應用地、跨設備地跟蹤用戶的行為,並對用戶畫像持續進行調整。
比方說,你從線下渠道買了個新相機,拍完照片利用相機自帶的 Wi-Fi 將照片導入到手機上。這時候帶有某個推廣模塊的應用對區域網發起了一次掃描,識別到了一個新的設備,推廣模塊會將相機的 MAC 地址上傳了雲端,進行簡單的識別對比以後,很容易知道這個 MAC 地址屬於相機。這樣帶有推廣模塊的應用都會在畫像里給你加上「相機用戶」這樣的標籤,當你下次打開帶有同一個推廣模塊的購物應用時,你就會看到推薦了一堆和相機有關的東西。
程序 A 在和相機交換數據時,程序 B 也可以掃描這個相機
所以在 iOS 14 里,Apple 開始對本地網路許可權做出了更加嚴格的限制。
哪些 App 需要開本地網路許可權?
那麼到底哪些 App 我們需要給本地網路許可權呢?
就大部分應用而言,它們都不需要給本地網路許可權。因為它們沒有功能會使用到本地網路,請求這個許可權的主要目的就是為了跟蹤用戶並推送廣告。
HomeKit、AirDrop、AirPlay 和 AirPrint 都是不需要網路許可權的
使用 HomeKit、AirDrop、AirPlay 和 AirPrint 的應用也不需要給出本地網路許可權,使用這類 API 的時候蘋果會以保護隱私的前提下傳輸和交換數據。
智能家居 App(非 HomeKit 型,比如米家等)、在線流媒體投屏類 App(比如 Spotify、騰訊視頻等)會相對複雜一點:配對時需要授予許可權,控制時可以選擇性授予許可權。
配對智能家居和電視時,對應的 App 只有先在本地找到對應的設備,才能進行配對,所以這個過程是必須要授予本地網路許可權的,配對完成以後大部分的智能家居服務會把設備記錄到雲端。
而到了控制時,由於在雲端存有智能家居的信息,用戶在控制時 App 會先嘗試從本地提交請求,如果無法連接的話再從雲端向設備推送請求,即可以選擇性授予許可權。
簡單的延遲測試
從本地推送和從雲端推送,簡單的開關命令、調節命令延遲實際上沒有特別大的區別,所以不給本地網路許可權是完全可以的。只有在網路環境較差時,推送和播放內容的時才會感覺到明顯延遲和卡頓。所以我認為,智能家居類 App 還是在線流媒體的投屏推送類 App 只需要在配對時短暫打開一段時間,日常使用的時候完全沒有必要給本地網路許可權。
最後這三類 App 是必須要授予本地網路許可權的,它們包括:
利用本地網路進行設備發現
利用本地網路進行數據傳輸
網路調試工具
利用本地網路發現設備的應用我接觸的也不是很多,大部分都是和智能家居有關的 App。其他和這方面有關的應用有:邀請同一網路下的好友一起加入遊戲的應用和路由器的管理應用等。
而利用本地網路傳輸數據的應用還是挺多的,比如你用本地視頻播放器 nPlayer 播放 NAS 里的視頻時就需要本地網路許可權;又比如你想要把手機里的照片利用第三方軟體投射到電視上,這也是需要本地網路許可權的;再比如你經常使用 TIM 里的面對面快傳,這項功能也需要本地網路許可權才能正常工作。利用本地網路傳輸數據的場景還有很多,這裡我只是舉出了三個常見的例子。
最後一個就是極客用得比較多的網路調試工具,比如 HE Network Tools,如果不給本地網路許可權的話所有和本地網路有關的測試工具都會失敗。不過我相信使用這類應用的人都知道要打開這個許可權。
好在未來開發者適配以後,在請求本地網路許可權時你會看到這個應用的哪些功能需要許可權,幫助你更好地判斷是否要授予。
以上就是關於 iOS 14 的本地網路許可權詳解的全文了,希望它能幫助到你。