提到微信,中國網友是又愛又恨,日常溝通已經徹底離不了,但體積卻臃腫不堪,動不動就佔用30GB以上的空間,成為手機中佔記憶體最大的APP。
不過,有網友表示,最初的微信確實是「小而美」的,在2011年1月發布的微信1.0版本,Android APK的體積僅457KB,還沒有一張照片體積大。而當時這麼小的APK,就已經可以發送即時訊息給聯絡人了。
2022年6月發布的微信8.0.24版本,Android APK安裝包的體積已經膨脹到了257MB,比很多PC軟體的體積還要大,11年來膨脹了575倍,那麼,現在體積這麼大的APK,到底胖在哪裡?
近日,B站頻道「科技老男孩」就通過逆向工程揭秘的微信APK安裝包,看了看它膨脹575倍到底更新了什麼。
解壓發現,微信8.0.24版本APK共包含12639個檔案,而回顧微信1.0版本只有199個檔案。
微信8.0.24中,資料夾主要有:
-
assets資料夾:體積78.4MB,裝著微信的資源檔案,比如自帶emoji表情、字體、收款音訊、微信電話鈴聲等等。
-
lib資料夾:體積337MB,裡面都是第三方函式庫,一共157個函式庫,比如解碼、解壓縮等,塞入的功能越多,需要調用的函式庫也就越多,安裝包體積也就越臃腫。而在微信1.0版本中,只有一個,體積僅127KB。
-
META-INF資料夾:體積2.1MB,裡面儲存的是開發者的數位簽名。
-
r資料夾:體積12.8MB,裡面存放著APP資源庫,還有雜七雜八的素材圖片。
-
resdec資料夾:體積0MB,是個空資料夾。
此外在根目錄下還有17個檔案:
-
AndroidManifest.xml,是配置檔。
-
baseInfo.dat,記錄著classes.dex文件的MD5值。
-
resources.arsc,記錄著檔案之間的對應關係。
此外,還有14個classes.dex檔案,也就是微信編譯後的程式本體。新版共佔用161MB,而初代只有1個classes.dex,體積僅256KB。11年暴漲644倍。
繼續逆向工程後,他表示,微信中真正實現聊天的程式碼可能只佔0.1%,大部分程式碼用來運行小程式、視訊等功能,「微信佔用的99.9%空間都是存放的垃圾功能和資源。」
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!