在9月發布的Android Studio 3.2,開始支援Android新的發布格式Android App Bundle,而今Google釋出Android App Bundle和Play控制臺的更新,除了能提供更小容量的應用程式外,也改善了對大型應用程式的支援,現在安裝的APK大小可高達500MB,開發者還能使用Unity發布App Bundle。

根據Google的使用者研究顯示,較小的應用程式有較高的轉換率外,應用程式的大小更是左右使用者卸載的主要原因。從2012年來,由於開發者想要提供更好的內容,讓應用程式的平均容量成長了5倍,但在使用者裝置有限的容量、資料流量以及網路連線品質等各種限制,應用程式大小與安裝轉化率呈現負相關。

應用程式太大除了會讓安裝機率下降外,還會讓使用者想要解除安裝。數百萬計Android使用者每天都會看到裝置容量不足,卸載不常用的應用程式以釋放空間的提示,Google提到,使用者通常都會從容量最大的應用程式或是遊戲下手。去年的調查結果指出,使用者之所以移除應用程式的第一名原因,就是要為裝置騰出更多的空間。

雖然知道了問題原因,但過去其實並無有效的方案解決這個問題,開發者可以在單一版本為不同的裝置建構不同的APK,來縮小應用程式容量,對螢幕尺寸、處理器架構或是32與64位元等裝置硬體進行最佳化,但是開發者就必須同時維護數百個APK,這需要很多的資源,導致大多數的開發者, 只想把所有內容塞進一個很胖的APK當中。

而現在Google Play已經可以解決這個問題了,概念就是讓開發者上傳需要的所有內容,並由Google Play為每個用戶的裝置提供所需的內容。在Google最新的更新中,開發者不只可以在Android Studio選擇將應用程式發布成Android App Bundle,現在使用Unity也沒問題。

當使用者把App Bundle上傳到Google Play時,Google Play會對其進行處理,並且為所有裝置和設定產生拆分APK,當使用者要安裝應用程式時,Google Play會提供基本拆分APK,其中包含所有裝置都適用的基本程式碼,還有語言拆分APK以及設備配置拆分APK,來針對用戶使用的語言和裝置進行配置。因此使用者的裝置將可以不再浪費空間,儲存用不到的程式。

這種應用程式發布的新模型,能夠顯著減少應用程式的容量,降低占用裝置的空間並且縮短下載時間,平均縮小達3.5%,Google表示,使用Android Studio 3.2以及Unity 2018.3測試版以上,都可以用來建構App Bundle, Android App Bundle開源且向後相容,開發者要將現有的應用程式切換到新的發布模型也很簡單,只不過Android L之前版本,Google Play的處理方式稍微不一樣,會為每個裝置自動產生許多完整APK,而非拆分APK。

Android App Bundle還支援動態功能(Dynamic Features)的模組化設計,這代表開發者可以在應用程式中增加模組,並且按照需求載入應用程式的其他功能,而這也有助於解決應用程式太大的問題。開發者可以在Google Play中提供一個具基本功能的應用程式,並讓Google Play推延安裝大型功能模組,在使用者需要的時候才在背景下載並安裝。

這樣的設計將能讓開發者為特定受眾訂製內容,像是為付費用戶安裝進階功能,或是使用者在初次安裝應用程式,才會使用到的身份證驗證或是信用卡掃描這類功能,也能由動態功能在必要時將其卸載。

而開發者現在可以使用新的APP內更新(In-App Updates)的全新API,提示使用者不需要跳出應用程式直接進行更新,而且還能讓使用者在背景下載結束後,直接重新啟動應用程式,以維持全螢幕的使用者體驗。這項功能目前還在早期存取階段,將在數月後正式上線。

隨著更新,Play控制臺也將允許開發上傳大型的App Bundle,而APK容量最大為500MB,所以在大多數的情況下,開發者不再需要使用擴充檔案。Google在Play控制臺增加新的工具,供開發者評估核心指標,還可以下載為CSV檔案。

熱門新聞

Advertisement