Spotify udostępnia na zasadach open source narzędzie Linijka, które pomaga twórcom aplikacji analizować rozmiary aplikacji

Spotify udostępniło swoje narzędzie Linijka na zasadach open source, aby pomóc twórcom aplikacji analizować rozmiary aplikacji. Jest to łatwy sposób identyfikowania dużych zależności.

Instalując aplikacje ze Sklepu Google Play, użytkownicy zazwyczaj wolą mniejsze rozmiary aplikacji. Może to wynikać z ograniczonej przestrzeni dyskowej lub ograniczonej przepustowości pobierania, a niektórzy użytkownicy po prostu wolą szybszą instalację. Niemniej jednak Spotify ma narzędzie o nazwie „Linijka”, którego używa do pomiaru i analizowania rozmiaru swoich aplikacji na Androida w celu ustalenia, jak je zmniejszyć. Teraz firma udostępnia to narzędzie jako oprogramowanie typu open source i może z niego korzystać każdy programista, który chce z niego korzystać.

Aplikacje publikowane w sklepie Google Play są obecnie zazwyczaj przesyłane w formie pakietu aplikacji na Androida. Gdy użytkownik zażąda instalacji aplikacji, Sklep Google Play generuje zoptymalizowany plik APK dla użytkownika końcowego, który instaluje aplikację. Linijka naśladuje ten proces, aby utworzyć plik APK zgodny z tym, co powinien otrzymać użytkownik końcowy. Dla każdego pliku Linijka rejestruje następnie dwa pomiary:

  1. Rozmiar pobierania: Bajty przesyłane przez sieć, gdy użytkownik pobiera aplikację
  2. Rozmiar instalacji: Bajty, jakie plik zajmuje na urządzeniu po zainstalowaniu aplikacji

Linijka może następnie przeskanować aplikację i znaleźć listę znajdujących się w niej plików oraz ich rozmiary. Może także znaleźć wszystkie moduły i zależności Gradle, które wpływają na rozmiar aplikacji. W ten sposób tworzona jest druga lista wszystkich komponentów i ich zawartości. Połączenie obu list umożliwia pogrupowanie wszystkich plików aplikacji według ich źródła i określenie, w jakim stopniu każdy moduł i zależność wpływają na ogólny rozmiar aplikacji. Istnieją również inne metody i warto sprawdzić tę firmę wpis na blogu inżynierskim uczyć się więcej.

Spotify twierdzi, że główna aplikacja Spotify ma ponad 1000 modułów Gradle i setki zależności od stron trzecich, a Ruler pomógł zmniejszyć rozmiar aplikacji o nieco ponad 9% w ciągu ostatnich sześciu miesięcy. Firma twierdzi, że raz dziennie eksportuje dane o rozmiarze aplikacji, korzystając z najnowszej głównej wersji. Może wykorzystywać te dane do śledzenia trendów historycznych, zarówno dotyczących aplikacji jako całości, jak i poszczególnych modułów oraz zależności od stron trzecich. Analizowany jest również wpływ każdego żądania ściągnięcia na rozmiar aplikacji, aby umożliwić programistom wczesne przekazanie informacji zwrotnej.

Linijka jest w całości napisana w Kotlinie i aby z niej skorzystać wystarczy zastosować wtyczkę do swojego projektu na Androida i uruchomić jedno zadanie Gradle. Możesz sprawdzić Ruler GitHub aby dowiedzieć się, jak zintegrować go z projektem.