Spotify telah menjadikan alat Ruler-nya sebagai sumber terbuka untuk membantu pengembang aplikasi menganalisis ukuran aplikasi mereka. Ini adalah cara mudah untuk mengidentifikasi dependensi yang besar.
Saat memasang aplikasi di Google Play Store, pengguna biasanya lebih memilih ukuran aplikasi yang lebih kecil. Hal ini mungkin disebabkan oleh terbatasnya ruang penyimpanan atau terbatasnya bandwidth pengunduhan, atau beberapa pengguna bahkan lebih memilih penginstalan yang lebih cepat. Namun demikian, Spotify memiliki alat bernama "Ruler" yang digunakan untuk mengukur dan menganalisis ukuran aplikasi Android untuk tujuan mencari cara mengecilkannya. Kini perusahaan menjadikan alat tersebut sebagai sumber terbuka dan gratis digunakan oleh pengembang mana pun yang ingin menggunakannya.
Aplikasi yang dipublikasikan di Google Play Store kini biasanya diunggah dalam bentuk Android App Bundle. Saat pengguna meminta aplikasi untuk dipasang, Google Play Store kemudian membuat APK yang dioptimalkan untuk pengguna akhir yang memasang aplikasi tersebut. Ruler meniru proses ini untuk membuat APK yang akurat sesuai dengan apa yang seharusnya diterima pengguna akhir. Untuk setiap file, Ruler kemudian menangkap dua pengukuran:
- Ukuran unduhan: Byte ditransfer melalui jaringan saat pengguna mengunduh aplikasi
- Ukuran pemasangan: Byte yang digunakan file di perangkat setelah aplikasi diinstal
Ruler kemudian dapat memindai melalui aplikasi dan menemukan daftar file di dalamnya dan ukurannya. Itu juga dapat menemukan semua modul dan dependensi Gradle yang berkontribusi terhadap ukuran aplikasi. Melalui ini, daftar kedua dibuat dari semua komponen dan isinya. Menggabungkan kedua daftar memungkinkan untuk mengelompokkan semua file aplikasi berdasarkan sumbernya dan menentukan seberapa besar kontribusi setiap modul dan dependensi terhadap ukuran aplikasi secara keseluruhan. Ada metode lain yang terlibat juga, dan ada baiknya memeriksa metode perusahaan posting blog teknik untuk mempelajari lebih lanjut.
Spotify mengatakan bahwa aplikasi utama Spotify memiliki lebih dari 1.000 modul Gradle dan ratusan dependensi pihak ketiga, dan Ruler telah membantu mengurangi ukuran aplikasi sebanyak lebih dari 9% dalam enam bulan terakhir. Perusahaan mengatakan bahwa mereka mengekspor data ukuran aplikasi sekali sehari, menggunakan versi utama terbaru. Data ini dapat digunakan untuk melacak tren historis, baik aplikasi secara keseluruhan maupun modul individual dan dependensi pihak ketiga. Dampak ukuran aplikasi dari setiap pull request juga dianalisis sehingga masukan awal dapat diberikan kepada pengembang.
Ruler sepenuhnya ditulis di Kotlin, dan untuk menggunakannya, yang perlu Anda lakukan hanyalah menerapkan plugin ke proyek Android Anda dan menjalankan satu tugas Gradle. Anda dapat memeriksa Ruler's GitHub untuk mempelajari cara mengintegrasikannya ke dalam proyek Anda.