APK替代者Android App Bundles八月生效:改變應用打包和交付方式
Google Play Store 一直在不斷發展,以滿足Android 用戶和開發者不斷增長的需求。現階段的很多改進都依賴於由人工智能和機器學習的自動化系統,特別在篩選APP 中的惡意程序和禁用內容方面。不過有些改進需要開發者對APP 的編寫和發布方式進行改進。
其中最具顛覆性的變化之一將會在今年8 月到來,屆時Google應用商店將改用App Bundles而不是APK作為其標準包格式,這一變化不僅會影響到開發者,也會影響到普通Android 用戶,希望能有更好的效果。
Android App Bundles 的優勢
對於Android 用戶來說,APK 安裝文件應該不會陌生了。APK更類似於Java的JAR檔案(實際上是它的延伸),旨在捆綁一個應用程序在設備上安裝所需的一切,從代碼到圖像和聲音等資產,其中一些將為不同種類和尺寸的設備提供不同版本。然而,隨著Android 生態系統的發展,需要打包在APK 中才能使用的東西也越來越多。
但目前APK 文件已經無法很好地適應Android 系統的發展,Google不得不為大型應用制定變通方案,特別是有時需要數千字節額外數據的遊戲。現階段的變通方法就是在用戶玩遊戲或者使用應用之前,通過OBBs 的形式提前進行下載。這些都是Android App Bundles 承諾要解決的問題,雖然這些變化對用戶來說應該是透明的,但它們仍然應該是非常明顯的。
Android App Bundles 簡稱為AAB,將會徹底改變Android 應用的打包和交付方式。其中最主要的區別之一在於,APK 文件不再需要包含所有的內容,這意味著安裝包的容量會減少,下載時間會更快。事實上,Android App Bundles 要求APP 的大小不要超過150MB。
對於超過150MB 的APP,Android App Bundles 引入了名為Play Asset Delivery(PAD)方式來替代OBB。使用更好的數據壓縮和動態交付策略,這個PAD 系統承諾對非代碼資產的下載速度也會更快,甚至用戶已經在玩遊戲的時候。
未來的更新也可以更小,因為PAD 不會包含所有的新資產,而只包含不同版本的資產之間的變化,也就是它們的deltas。遊戲資產交付也有安全方面的好處,因為資產存儲在Google Play 並從其下載,而不是由開發者自己安排的一些CDN 託管。
Android App Bundles 另一個APK 無法實現的新功能就是Play Feature Delivery。它擴展了App Bundles 的概念,只包含特定設備上需要的應用程序的部分,但側重於盡快實際開始使用該應用程序所需的功能。Google的想法是,這將使用戶在安裝應用後幾秒鐘就能立即使用該應用,而將應用的其他部分推遲到以後再下載。
Android App Bundles 的生效時間
對於Android 用戶來說,Android App Bundles 在使用方面沒有太大的變化,但會改善下載和使用體驗;而這些操作都需要開發者進行維護和修改。Android App Bundles 將於今年8 月生效,僅對提交至Play Store 的新應用生效。當然,如果開發者想改善用戶的體驗,他們也可以自願採用App Bundles。
Android App Bundles 的“隱藏陷阱”
這聽起來不錯,但對於開發者來說還有一個“隱藏陷阱”。那就是Android App Bundles 雖然改善了應用安裝和分發體驗,但和APK 不同的是,Android App Bundles 無法應用於Play Store 之外的應用商城,也不能在Play Store 之外進行分發。
這意味著,從APK 轉向App Bundles 的開發者不能再在其他應用商城上提供完全相同的軟件包或體驗,除非他們選擇維護一個單獨的APK版本。這自然使第三方應用商店處於不利地位,但Google很可能會把Play Store 的安全性作為避免這些來源的一個主要藉口。