Twitter 使用 App Bundle 將應用程式大小縮減三分之一
瞭解 Android App Bundle 如何協助 Twitter 簡化和縮減應用程式大小。
背景
對 Twitter 團隊而言,減少應用程式大小和確保安裝過程簡單十分重要;尤其在新興市場,數據連線不穩定會令大型應用程式難以使用。Twitter 高級主管軟件工程師 César Puerta 表示:「我們希望任何人都能隨時隨地使用 Twitter,特別是在新興市場的使用者。而我們發現,APK 大小會影響很多人的使用意願。App Bundle 提供直接的解決方法,讓我們可以大幅縮減發佈檔案的大小,而且過程沒有任何阻礙。」
採取的方法
在採用 App Bundle 前,Twitter 團隊曾手動將應用程式分割成四個 ABI,而且縮減成效十分顯著。不過,當他們知道採用 App Bundle 的方法更簡單有效,就很樂意轉用了。
在決定轉用前,Twitter 團隊花了不少時間研究 App Bundle 需要的「Play 應用程式簽署」功能,確保此功能符合 Twitter 的安全標準。César 表示:「我們預計需要多次預先審視有關要求,但當 App Bundle 最終版本推出後,我們就直接採用,而且沒有遇到任何問題。」
在開發期間,Twitter 團隊曾運用 bundletool 擷取 APK 並發佈至品質管理團隊。他們亦在推出正式版本前,邀請大量使用者全面測試 App Bundle。整個過程暢順無阻,因此他們其後亦將「內部測試」版本的應用程式轉至「Play 商店」,讓更多人參與測試,加快找出問題。
結果
完成轉換後,Twitter 團隊順利向 1,360 萬名使用者推出全新的模組化應用程式版本。由於 Twitter 已採用自動化發佈程序,因此新的發佈程序和先前十分類似。然而,當中帶來了意料之外的好處。César 表示:「每個發佈版本只需處理單一版本 ID,而無需處理四個不同 ABI 版本的 ID,有助我們整合數據。」
更重要的是,根據他們的報告,應用程式大小整體比分割為不同 ABI 版本時,進一步縮減了 30-40%。他們採用的其中一個方法是使用功能模組,以分開只有小部分裝置需要的大型原生資料庫 (每個 ABI 大小為 3 MB)。
Twitter 下一步計劃將其即時影片分享應用程式 Periscope 亦轉移至 App Bundle。César 的團隊亦正致力將整個 Twitter 應用程式模組化。他表示:「當我們完成轉用獨立功能模組後,可能會考慮以動態方式發行部分功能。」他認為有關計劃仍需時 6 至 12 個月才可開展。César 亦希望模組化可讓開發人員在 Twitter 和 Periscope 之間重用模組,以節省大量時間和非必要的重複流程。
開始
所有應用程式和遊戲的開發人員都可以使用 Android App Bundle。 立即開始使用!