粗略地統計了幾個常用的國外和國內手機APP,按照類別大致滴對比其APK文件大小,國內APP普遍比國外APK文件大,這是什麼原因呢?1.是功能相同的情況下,國內APP的代碼不夠簡潔嗎?2.是國內APP整合了各種亂七八糟的功能,代碼不得不增多,而變成不純凈版的應用嗎?希望有大佬解答賜教
粗略地統計了幾個常用的國外和國內手機APP,按照類別大致滴對比其APK文件大小,國內APP普遍比國外APK文件大,這是什麼原因呢?
1.是功能相同的情況下,國內APP的代碼不夠簡潔嗎?
2.是國內APP整合了各種亂七八糟的功能,代碼不得不增多,而變成不純凈版的應用嗎?
希望有大佬解答賜教
題主問的問題非常好,甚至讓我下載了百度的 APP 把玩了一番。
Chrome 和 百度在題主看起來是一類應用。但是實際上是完全不一樣的東西,至少從功能上看是這樣的。Chrome 除了首頁可能會有個新聞列表,其他部分完全就是個純粹的瀏覽器。但是,百度 APP 是百度在移動端最後的陣地,是百度「全村的希望」,一旦失去,退無可退。
一起把玩一下現在的百度 APP:
根據下面的 TAB 粗略估算下百度 APP = 瀏覽器 + 今日頭條 + 抖音 + 語音AI助手 + 微博 。當然這樣說百度 APP 有點冤枉它了,因為現在國內的應用都非常的臃腫,什麼功能都要支持,短視頻熱門了,加!直播火了,加!最終就導致國內應用很少有追求小而美的。
回歸到題目本身,簡單分析一下百度的 APK 體積為啥這麼大?102M 都裝的什麼玩意?使用 Android Studio 自帶的 APK 分析器打開百度 APK:
可以看到,體積單項佔比最大的依次是 lib 包、8個 dex 文件、assets 文件和資源文件。足足佔據34.9M 的 so 包括 webview底層庫、open cv、音視頻解析、百度語音甚至還有人臉相關的庫文件。這樣的一個應用有102M 倒是真的可以理解的,相信百度還對 APK 大小這方面做了深入的優化。但是我想說,百度啊,你這樣臃腫下去真的會失去更多用戶的,祝 Robin 好運,不會被這波移動互聯網拍死在沙灘上。
看了一下,並夕夕的包倒是挺小的只有20多兆。
_______________________
無腦做加法,極少做減法,不臃腫纔不正常。
雖然確實國內應用因為一些原因要多做適配,但是根本原因還是各種無用功能。
我用百度網盤是看小說的嗎?
我用網易雲音樂是看小視頻的嗎?
我用迅雷是看xx小廣告的嗎?
我用得著微信的什麼拍一拍看一看陌生人嗎?
我不用手機淘寶的微淘,看著想吐可以關掉嗎?
一攬子套第三方庫的後果
某些程序員就是能用第三方庫就一律套庫,也不做點裁剪
自己寫可能20k就夠的功能套了個庫就2m了
咱們國家程序員任勞任怨 每個人都是996 一點點不斷完善每一個app 向他們默默奉獻致敬!
安卓的手機我沒用過 從3gs開始用的iPhone
wechat 在app store上是300mb+,可憐的whatsapp只有100mb多,明顯比我們差了一半,並且功能比wechat差了很多,竟然允許消息全平臺同步,差評!
另外發現一點,一些國內app的國際版,比如說weibo international, qq international都比我們國內至少小了一半。 終於又一次我們不再外國人優先了,你看不懂中文,你就只能用上小的app,只有認識中文的才能使用full app
為了不給咱們國家互聯網公司的伺服器造成過大負擔,我手機上幾乎都不裝國產app,比如我平時用apple pay替代alipay, g替代了baidu,Y替代了blibli, N替代了愛奇藝。總之,我自己麻煩一點不要緊,
我感到驕傲和自豪!!感謝國內手機應用的禮包!! 加油!!!
==========================
我沒有任何對國內程序員的敵意
如果有,那是對國內某些互聯網公司的,比如,我不敢比如
就比如微信
你可以在微信上看網頁,此時微信=瀏覽器
你可以在微信上看視頻,此時微信=youtube
你可以用微信聊天,此時微信=messenger
你可以用微信分享照片,此時微信=facebook
你可以在微信上購物,此時微信=amazon
再比如淘寶
你可以用淘寶看視頻,此時淘寶=youtube
你可以用淘寶買機票,此時淘寶=cheapoair
你可以用淘寶聊天,此時淘寶=messenger
你可以用淘寶點外賣,此時淘寶=uber eats
其它也差不多,比如你可以用支付寶買理財,可以用美團掃共享單車。
說白了,國內的每個APP,都想在保住自家一畝三分地的同時,蠶食掉對手的市場。
只要保住了自己的一畝三分地,往外擴張一個新app也就順理成章了。
facebook保住了社交的地盤,就把messenger獨立出去,以一個即時聊天工具的形象示人。
QQ當年也是保住了社交的地盤,才會在內部孕育出微信並獨立運營。