讓我們看看 你的App背著你都偷偷幹了什麼事

  • A+
所屬分類:新奇
摘要

  新酷產品第一時間免費試玩,還有眾多優質達人分享獨到生活經驗,快來新浪眾測,體驗各領域最前沿、最有趣、最好玩的產品吧~!下載客戶端還能獲得專享福利哦!


新酷產品第一時間免費試玩,還有眾多優質達人分享獨到生活經驗,快來新浪眾測,體驗各領域最前沿、最有趣、最好玩的產品吧~!下載客戶端還能獲得專享福利哦!

本文來自極客公園

讓我們看看 你的App背著你都偷偷幹了什麼事

近期,小米 MIUI 的一次更新,引起了軒然大波。

小米手機最新版操作系統——MIUI12 中,有一個叫做『照明彈』的功能。顧名思義,這個功能是要把一些之前在黑暗中的東西暴露在強光下,讓用戶一目了然。

在『照明彈』里,用戶可以看到某一應用『自啟動』、被其他應用啟動以及讀取設備數據等具體行為,手機 App 原本不為人知的動作一覽無餘。

讓我們看看 你的App背著你都偷偷幹了什麼事

MIUI12 照明彈功能部分截圖,左側為App自啟動情況,右側為App被喚醒情況 | MIUI

個別應用在後台『反覆橫跳』,頻繁啟動各種『全家桶』應用,讀取用戶隱私信息,這些問題在社交網路上引起了很多數碼圈和產品圈人士的討論。這些應用為什麼要在後台反覆刷數據?對開發廠商來說,自啟動和讀數據會帶來哪些好處?普通用戶又該如何防範呢?

刷用戶、收數據,APP 啟動為了什麼?

App 自啟動其實不是什麼新鮮事,安卓平台也賦予開發者這種能力,只是很多時候在商業背景下,這一能力被濫用了。

要想搞明白 App 的自啟動,首先要清楚安卓的核心。它是一個開放開源的平台,追求的是被儘可能多的設備使用。因此對於安卓來說,它想要覆蓋的,並不僅僅是手機市場,像廣告機、自助購票機等很多場景化的設備也是安卓的獵物。

想要收穫更多的應用場景,就要有足夠多的介面支持。對於廣告機等設備來說,開機自動進入應用程序、即插即用是剛需,因此安卓在設計之初就支持應用程序自啟動,有需求的 App 只需調用 API 介面即可實現。

安卓的本意是好的,但卻被部分開發者用壞了。由於可以自啟動,一些 App 就開始利用這個 API 介面暗戳戳地自己啟動自己,一方面刷 DAU(日活用戶),另一方面在後台收集數據。

不要小看你手機里的數據,它們在應用程序開發商那裡可是寶貝。地理位置、錄音、通訊錄、剪貼板、相冊等等都是有料可挖的數據金礦。

以打車應用為例。很多時候,為了讓用戶體驗更好,平台會設置一項貼心功能,用戶在打開 App 的同時,系統自動猜出用戶想要去的目的地。比如用戶早上在家附近打開叫車 App,系統會自動推薦目的地是公司所在地。傍晚用戶在公司附近打開 App,系統猜測用戶是要接小孩放學,自動推薦孩子的學校地址。

這一功能的實現主要基於用戶在平台上的交易記錄,但如果用戶的交易數據不足夠多時,系統就需要更豐富的用戶地理位置數據來預測用戶的生活軌跡。這一問題有一個簡便可行的解決方案,那就是每隔一段時間在後台喚醒 App,自動收集用戶的地理位置。

又如,現在支付 App 都有免密支付的功能。用戶在經常活動的位置進行小額交易,是不需要輸入密碼或者刷臉驗證的。這背後也需要 App 定期喚醒,獲得用戶的地理位置數據,從而進行風險控制。

從 App 自啟動中受益的不僅僅是打車、支付這兩個場景。事實上,對於大多數 App 來說,擁有自啟動的能力都是一個零本萬利的事。甚至為了以防哪天萬一用得到,很多 App 在開發之初就預留了這一能力。

一般而言,大公司的 App 受到更多的監管,會相對規範,自啟動的目的更多是為了更好地服務用戶。相較之下,一些小公司的應用程序路子會更野一些。

比如偷偷啟動麥克風監聽或錄音,或者訪問相冊獲取隱私照片等等。這些用戶數據會被打包售賣,甚至有可能被賣給黑產。這樣一來,用戶不僅面臨著隱私泄漏的風險,更有可能遭受人身和財產安全的威脅。

互相喚醒:卡頓、發熱的元兇

安卓的開放帶來了非常多的『玩法』,其中最為典型的要數 App 的雙進程。簡單的理解是,當用戶啟動 App 時,同時啟動了這一 App 的兩個進程。當用戶關掉 App 時,一個進程被殺死,另一個仍在後台運行。

這一操作的目的其實和自啟動一樣:刷 DAU,拿用戶數據。二者對用戶帶來的困擾也是相同的:隱私泄漏。另外,由於這個『殺不死』的進程一直在後台運行,導致用戶手機很快就會發燙、卡頓,需要關機重啟,使用感受直線下降。

事實上,『進程保活』一直是 App 開發人員與安卓系統的對抗焦點。對於從草莽時期長出的很多 App 來說,如果後台進程被殺死,那麼其『商業模型』將受到根本性的動搖。但是安卓希望對終端用戶友好,所以在每一個版本的升級中,都在更新阻礙開發者『進程保活』的方法。

魔高一尺,道高一丈。在長期與安卓抗爭的過程中,App 開發人員開始抱團取暖。同一生態下的 App 互相合作,一個被殺死了,另一個再把它拉起來。在技術社區內,這一方法被稱為『進程永生技術』。

在開篇的『照明彈』截圖中,你會發現有些 App 會在後台喚起另一個 App,有很大可能是在互相保活。另外,一個 App 喚醒另一個 App,也可能是為了廣告刷量。

比如 A 公司在 B 公司的 App 上投廣告,那麼通過 B 向 A 導流的每一次點擊都會為 B 帶來營收。所以 B 在後台假裝用戶點擊 A,那麼在 A 看來就是一個『真實用戶的點擊』。B 欺騙 A,從廣告效果來說,肯定會對 A 造成損失。

除保活和刷量之外,App 之間互相喚醒還有交換數據的可能。舉例而言,社交 App 的數據對網購 App 來說很有用。通過關係鏈的拉取,能夠精準進行用戶畫像,識別購買需求。

不過,這種數據交換的操作在巨頭們沒有形成生態之前,是通過 API 介面發生在用戶手機上的。在有了生態,特別是各公司紛紛開始建立中台之後,用戶數據的交換就慢慢地轉移到伺服器層面了。

『照明』之後,接下來怎麼辦?

玩法這麼多,感覺防不勝防?事實上,最基本也是最有效的防範,是用戶對 App 許可權的控制。如果 App 沒有訪問許可權,那麼它每天自啟動多少次都是徒勞。

但並不是所有的人都有意識有能力關注手機的許可權管理,對於上了年紀的人來說更似如此。因此,監管方和平台方需要共同負起責任。

平台方是否有動力負這個責任,其實是需要打個問號的。要想識別違規 App 並督促其下架整改,需要成本投入。目前國內很多應用商店的背後,是手機硬體廠商。如果手機廠商抱著『賣一台算一台』的想法,後續服務就很難跟上。

MIUI 是小米商業化的重要支點,因此從商業角度來說,小米有動力做這件事。『照明彈』功能也確實給 MIUI 平台上 App 的合規性帶來了提醒。誰自啟動了,誰啟動了誰,誰的啟動請求被系統拒絕了。。。。。。 這些原本就應該讓用戶知道的信息如今被清晰地展現出來。

『照明彈』推出之後,小米獲得了不少好評,但也有人說是個噱頭,因為並沒有從根本上解決問題。即便是小米,可能也沒勇氣徹底讓違規的 App 整改后再上架。另外,大部分人或許根本沒有意識到這照明彈到底照亮了什麼。所以,關於用戶數據保護和商業倫理的提升,靠企業的自我約束只是起點,這件事最終只有靠更多用戶的覺醒來完成。

責任編輯:宋德勝

圖片來源:MIUI

發表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: