自2011年以來(lái),Duolingo為全球數(shù)百萬(wàn)人提供了有趣的語(yǔ)言學(xué)習(xí)。提供多種30多種語(yǔ)言的免費(fèi)課程,Duolingo致力于使所有人都可以學(xué)習(xí)另一種語(yǔ)言。作為該任務(wù)的一部分,對(duì)他們來(lái)說(shuō),保持其應(yīng)用程序易于加載非常重要,因?yàn)樵S多用戶(hù)的入門(mén)級(jí)設(shè)備存儲(chǔ)空間有限。當(dāng)一項(xiàng)新功能需要與多種體系結(jié)構(gòu)中的本機(jī)庫(kù)進(jìn)行依賴(lài)時(shí),它們的應(yīng)用程序從10MB增加到46MB。這意味著團(tuán)隊(duì)突然需要一種方法來(lái)盡快精簡(jiǎn)其應(yīng)用程序大小。
他們做了什么
通過(guò)使用Android App Bundle,Duolingo解釋說(shuō),他們能夠在不犧牲功能的情況下大幅減小其尺寸。以前,他們使用單個(gè)APK,而在使用多APK方法進(jìn)行調(diào)查時(shí),多APK將需要對(duì)其構(gòu)建腳本進(jìn)行實(shí)質(zhì)性更改以處理版本代碼和文件名。該團(tuán)隊(duì)還需要對(duì)他們的開(kāi)發(fā)人員進(jìn)行再培訓(xùn)以管理版本。另一方面,應(yīng)用程序捆綁包幾乎不需要對(duì)其現(xiàn)有的自動(dòng)化進(jìn)行任何更改,并且易于生成和上傳。
“向Android App Bundle過(guò)渡很容易,”Duolingo首席收入官Bob Meese說(shuō)道?!霸搱F(tuán)隊(duì)現(xiàn)有的自動(dòng)構(gòu)建腳本旨在上傳APK,但他們要做的就是增加對(duì)上傳應(yīng)用程序捆綁包的支持。我們只需要更改幾行代碼即可?!?/p>
測(cè)試也是一個(gè)簡(jiǎn)單的過(guò)程。Duolingo團(tuán)隊(duì)使用內(nèi)部測(cè)試跟蹤,該跟蹤跟蹤使該應(yīng)用程序分發(fā)給員工以測(cè)試“無(wú)縫”Meese報(bào)告。他們發(fā)現(xiàn)將其推廣到現(xiàn)有用戶(hù)很容易,而最終所需的工作卻很少。
結(jié)果
通過(guò)實(shí)施Android App Bundle,Duolingo報(bào)告稱(chēng)他們將下載大小從46MB減少到20MB,減少了56%。作為一家全球性的語(yǔ)言學(xué)習(xí)公司,應(yīng)用程序的大小對(duì)于Duolingo至關(guān)重要,因此他們可以確保所有市場(chǎng)的用戶(hù)都可以享受免費(fèi)教育。Meese評(píng)論說(shuō):“應(yīng)用程序捆綁包幫助我們節(jié)省了應(yīng)用程序的大小,而不會(huì)減慢我們的開(kāi)發(fā)速度?!?/p>
通過(guò)針對(duì)ABI和屏幕密度實(shí)現(xiàn)尺寸減小的鼓舞,他們還計(jì)劃研究按語(yǔ)言劃分應(yīng)用程序捆綁包。Duolingo也正在探索向其應(yīng)用程序包中添加動(dòng)態(tài)功能模塊的選項(xiàng),以進(jìn)一步減小其應(yīng)用程序的大小,并在用戶(hù)需要時(shí)(而不是在安裝時(shí))按需提供功能。
開(kāi)始吧
應(yīng)用和游戲開(kāi)發(fā)人員可以立即構(gòu)建Android應(yīng)用捆綁包。開(kāi)始吧!