Spotify ponuja odprtokodno orodje Ruler, ki pomaga razvijalcem aplikacij analizirati velikost njihovih aplikacij

Spotify ima odprtokodno orodje Ruler, ki pomaga razvijalcem aplikacij pri analizi velikosti njihovih aplikacij. To je preprost način za prepoznavanje velikih odvisnosti.

Ko nameščajo aplikacije v trgovini Google Play, imajo uporabniki običajno raje manjše velikosti aplikacij. Razlog za to je lahko omejen prostor za shranjevanje ali omejena pasovna širina prenosa ali pa imajo nekateri uporabniki celo raje hitrejšo namestitev. Kljub temu ima Spotify orodje, imenovano "Ruler", ki ga uporablja za merjenje in analizo velikosti svojih aplikacij za Android, da bi ugotovil, kako jih zmanjšati. Zdaj podjetje izdeluje to orodje kot odprtokodno in brezplačno za uporabo za vse razvijalce, ki ga želijo uporabljati.

Aplikacije, objavljene v trgovini Google Play, so zdaj običajno naložene v obliki paketa Android App Bundle. Ko uporabnik zahteva aplikacijo za namestitev, nato trgovina Google Play ustvari optimiziran APK za končnega uporabnika, ki namešča aplikacijo. Ravnilo posnema ta postopek za ustvarjanje APK-ja, ki natančno ustreza temu, kar bi moral prejeti končni uporabnik. Za vsako datoteko Ruler nato zajame dve meritvi:

  1. Velikost prenosa: Bajti, preneseni po omrežju, ko uporabnik prenese aplikacijo
  2. Velikost namestitve: Bajtov, ki jih datoteka zavzame v napravi, ko je aplikacija nameščena

Ravnilo lahko nato skenira skozi aplikacijo in poišče seznam datotek v njej in njihove velikosti. Najde lahko tudi vse module in odvisnosti Gradle, ki prispevajo k velikosti aplikacije. S tem se ustvari drugi seznam vseh komponent in njihove vsebine. Združevanje obeh seznamov omogoča združevanje vseh datotek aplikacije glede na njihov vir in določanje, koliko vsak modul in odvisnost prispeva k skupni velikosti aplikacije. Vključene so tudi druge metode in vredno je preveriti metode podjetja objava na inženirskem blogu izvedeti več.

Spotify pravi, da ima glavna aplikacija Spotify več kot 1000 modulov Gradle in na stotine odvisnosti od tretjih oseb ter da je Ruler v zadnjih šestih mesecih pomagal zmanjšati velikost aplikacije za nekaj več kot 9 %. Podjetje pravi, da podatke o velikosti aplikacije izvozi enkrat na dan z uporabo najnovejše glavne zgradbe. Te podatke lahko uporabi za sledenje zgodovinskim trendom, tako aplikacije kot celote kot posameznih modulov in odvisnosti tretjih oseb. Analiziran je tudi vpliv velikosti aplikacije vsake zahteve za vlečenje, tako da je mogoče razvijalcem posredovati zgodnje povratne informacije.

Ruler je v celoti napisan v Kotlinu in če ga želite uporabljati, morate le uporabiti vtičnik za svoj projekt Android in zagnati eno nalogo Gradle. Lahko preverite pri Rulerju GitHub da se naučite, kako ga integrirati v svoj projekt.