自1982年以來(lái),Adobe的創(chuàng)造力和生產(chǎn)力工具一直在為人們提供幫助。但是,數(shù)十年來(lái),諸如Photoshop,Illustrator和Lightroom之類的Adobe應(yīng)用程序一直受到創(chuàng)意者的喜愛(ài),但PDF的謙虛-這是Adobe在30年前發(fā)明的-可能是最大的家庭名稱。
Adobe的旗艦Android移動(dòng)應(yīng)用程序Adobe Acrobat Reader是免費(fèi)的全球標(biāo)準(zhǔn),用于可靠地查看,簽名和注釋超過(guò)5億次下載的PDF文檔。這些年來(lái),情況一直在不斷好轉(zhuǎn)。Adobe的計(jì)算機(jī)科學(xué)家Shubham Garg說(shuō):“在過(guò)去的一年中,我們?yōu)锳ndroid應(yīng)用程序增加了許多功能。但是,盡管用戶喜歡這些新功能,但他們也開(kāi)始注意到應(yīng)用程序大小的增加,從而導(dǎo)致更新次數(shù)減少。舒巴姆說(shuō),這是一個(gè)問(wèn)題,“特別是在發(fā)展中經(jīng)濟(jì)體中,我們認(rèn)為這兩個(gè)問(wèn)題都更加突出?!?/span>
他們做了什么
Android應(yīng)用程序包使Adobe無(wú)需過(guò)多努力即可減小Acrobat的應(yīng)用程序大小。Shubham說(shuō):“遷移到應(yīng)用程序包很容易。”“我們的應(yīng)用程序已支持最低的Android SDK版本和Gradle要求,因此我們需要對(duì)代碼進(jìn)行微不足道的更改才能支持?!彼f(shuō),一旦他們將簽名密鑰的副本安全地轉(zhuǎn)移到了Google,部署就很容易了。
除了捆綁外,Adobe還選擇將多個(gè)應(yīng)用程序功能模塊化,以進(jìn)一步減小其應(yīng)用程序大小。Shubham說(shuō):“我們已經(jīng)在應(yīng)用程序內(nèi)部使用了庫(kù)模塊,但是動(dòng)態(tài)功能使我們有了不同的模塊化思考方式?!薄霸搼?yīng)用程序可以以獨(dú)立的方式交付,而無(wú)需在功能上具有編譯時(shí)依賴性,然后可以在以后安裝這些功能?!?/span>
他們模塊化的第一個(gè)功能是“Fill&Sign”。使用動(dòng)態(tài)交付,他們不再需要在每個(gè)APK中包括每個(gè)屏幕密度和特定于語(yǔ)言的資源。而且,由于他們已經(jīng)按架構(gòu)拆分了舊的APK,因此該團(tuán)隊(duì)無(wú)需進(jìn)行任何其他工作即可使其與App Bundle兼容。
結(jié)果
應(yīng)用程序捆綁包和動(dòng)態(tài)交付使Acrobat的應(yīng)用程序大小減少了15 MB,即約22%-25%。對(duì)于某些設(shè)備,節(jié)省的金額甚至更大,約為30%。推出過(guò)程非常順利:“我們沒(méi)有遇到任何性能下降,下載體驗(yàn)是無(wú)縫的,”Shubham說(shuō)。他認(rèn)為這部分歸功于易于測(cè)試?!拔覀円揽?jī)?nèi)部應(yīng)用程序共享,這為我們提供了Play商店的使用體驗(yàn),同時(shí)還允許我們上傳可調(diào)試的應(yīng)用程序而不必?fù)?dān)心版本控制?!?/span>
捆綁還節(jié)省了團(tuán)隊(duì)時(shí)間,因?yàn)樗麄儸F(xiàn)在只需要將單個(gè)工件上傳到Google Play。Shubham說(shuō):“以前,我們不得不依靠4個(gè)不同的APK,按架構(gòu)劃分?!爆F(xiàn)在,只有一個(gè)捆綁包。他們還看到安裝轉(zhuǎn)換率提高了5%-7%,而且抱怨應(yīng)用大小的用戶也越來(lái)越少。
對(duì)于動(dòng)態(tài)交付,“應(yīng)用程序安裝既小又快捷”,Shubham說(shuō)。在進(jìn)行模塊化之前,該團(tuán)隊(duì)曾經(jīng)在每個(gè)版本中上傳四個(gè)不同的APK。而且,由于每個(gè)APK都有不同的版本代碼,因此它們必須分別測(cè)量生命周期和分析數(shù)據(jù)-這既麻煩又容易出錯(cuò)。但是對(duì)于應(yīng)用程序捆綁包,他們只需要上傳具有單個(gè)版本代碼的單個(gè)工件。Shubham說(shuō):“這幫助我們簡(jiǎn)化了開(kāi)發(fā)過(guò)程,現(xiàn)在我們可以與測(cè)試人員共享單個(gè)版本,并放心它可以在所有設(shè)備上正常工作?!?/span>
接下來(lái)呢?Shubham說(shuō):“我們希望通過(guò)條件交付功能進(jìn)行試驗(yàn),以了解減小應(yīng)用程序尺寸或動(dòng)態(tài)交付某些功能的好處,以針對(duì)特定的受眾。”
開(kāi)始吧
所有應(yīng)用程序和游戲開(kāi)發(fā)人員都可以使用Android應(yīng)用程序捆綁包。立即開(kāi)始!