Spotify ღია წყაროს იყენებს თავის Ruler ინსტრუმენტს, რათა დაეხმაროს აპლიკაციის შემქმნელებს მათი აპლიკაციების ზომის გაანალიზებაში

Spotify-მა გახსნა თავისი Ruler ინსტრუმენტი, რათა დაეხმაროს აპლიკაციების დეველოპერებს მათი აპლიკაციების ზომის გაანალიზებაში. ეს არის მარტივი გზა დიდი დამოკიდებულების იდენტიფიცირებისთვის.

Google Play Store-ზე აპების ინსტალაციისას მომხმარებლები, როგორც წესი, უპირატესობას ანიჭებენ მცირე ზომის აპებს. ეს შეიძლება იყოს შეზღუდული შენახვის სივრცის ან ჩამოტვირთვის სიჩქარის შეზღუდული გამო, ან ზოგიერთ მომხმარებელს ურჩევნია უფრო სწრაფი ინსტალაცია. მიუხედავად ამისა, Spotify-ს აქვს ინსტრუმენტი სახელწოდებით "Ruler", რომელსაც იყენებს თავისი Android აპლიკაციების ზომის გასაზომად და გასაანალიზებლად, რათა გაარკვიოს, თუ როგორ უნდა შემცირდეს ისინი. ახლა კომპანია აკეთებს ამ ინსტრუმენტს ღია წყაროდ და თავისუფლად გამოსაყენებლად ნებისმიერი დეველოპერისთვის, რომელსაც სურს მისი გამოყენება.

Google Play Store-ზე გამოქვეყნებული აპები ახლა ჩვეულებრივ აიტვირთება Android App Bundle-ის სახით. როდესაც მომხმარებელი ითხოვს აპს ინსტალაციისთვის, Google Play Store წარმოქმნის ოპტიმიზებულ APK-ს საბოლოო მომხმარებლისთვის, რომელიც აინსტალირებს აპს. მმართველი მიბაძავს ამ პროცესს, რათა შექმნას APK ზუსტი, რაც უნდა მიიღოს საბოლოო მომხმარებელმა. თითოეული ფაილისთვის, Ruler იღებს ორ გაზომვას:

  1. ჩამოტვირთვის ზომა: ბაიტები გადაირიცხება ქსელში, როდესაც მომხმარებელი ჩამოტვირთავს აპს
  2. ინსტალაციის ზომა: ბაიტი ფაილი იკავებს მოწყობილობას აპის დაინსტალირების შემდეგ

შემდეგ Ruler-ს შეუძლია აპის მეშვეობით სკანირება და იპოვნოს ფაილების სია და მათი ზომები. მას ასევე შეუძლია მოიძიოს Gradle-ის ყველა მოდული და დამოკიდებულება, რომელიც ხელს უწყობს აპლიკაციის ზომას. ამის მეშვეობით იქმნება მეორე სია ყველა კომპონენტისა და მათი შინაარსისგან. ორივე სიის გაერთიანება შესაძლებელს ხდის აპლიკაციის ყველა ფაილის დაჯგუფებას მათი წყაროს მიხედვით და განსაზღვროს, რამდენად უწყობს ხელს თითოეული მოდული და დამოკიდებულება აპლიკაციის საერთო ზომაში. სხვა მეთოდებიც არის ჩართული და ღირს კომპანიის გადამოწმება საინჟინრო ბლოგის პოსტი მეტის გასაგებად.

Spotify ამბობს, რომ მთავარ Spotify აპს აქვს 1000-ზე მეტი Gradle მოდული და ასობით მესამე მხარის დამოკიდებულება, და რომ Ruler-მა ხელი შეუწყო აპლიკაციის ზომის შემცირებას 9%-ზე მეტით ბოლო ექვსი თვის განმავლობაში. კომპანია ამბობს, რომ აპლიკაციის ზომის მონაცემებს დღეში ერთხელ ახორციელებს უახლესი ძირითადი ვერსიის გამოყენებით. მას შეუძლია გამოიყენოს ეს მონაცემები ისტორიული ტენდენციების თვალყურის დევნებისთვის, როგორც მთლიანობაში, ასევე ცალკეულ მოდულებსა და მესამე მხარის დამოკიდებულებებზე. ასევე გაანალიზებულია აპლიკაციის ზომაზე გავლენა ყოველი მოთხოვნის მოთხოვნით, რათა ადრეული გამოხმაურება მიეცეს დეველოპერებს.

Ruler სრულად არის დაწერილი Kotlin-ში და მის გამოსაყენებლად საკმარისია გამოიყენოთ მოდული თქვენს Android პროექტზე და შეასრულოთ ერთი Gradle დავალება. შეგიძლიათ შეამოწმოთ Ruler's GitHub რომ ისწავლოთ როგორ ჩართოთ იგი თქვენს პროექტში.