Twitter menggunakan app bundle untuk mempertahankan bobot aplikasinya, sehingga mengurangi ukuran aplikasi sebesar sepertiga

Twitter mengetahui satu atau dua hal tentang membuat semuanya tetap singkat. Jadi, saat Google pertama kali mengumumkan Android App Bundle, Twitter bergabung dengan program akses awal untuk melihat bagaimana hal itu dapat membantu mengurangi ukuran aplikasi.

Menjaga agar aplikasi tetap ringan dan mudah dipasang sangat penting bagi tim di Twitter, terutama bagi pengguna di pasar negara berkembang, tempat koneksi data yang buruk membuat aplikasi besar menjadi masalah. “Kami ingin semua orang, di mana pun mereka berada bisa menggunakan Twitter, khususnya di pasar negara berkembang, dan kami menyadari bahwa ukuran APK menjadi sesuatu yang dipertimbangkan banyak pengguna,” kata César Puerta, Senior Staff Software Engineer di Twitter. “App Bundle memberikan solusi sederhana dengan memperkecil ukuran distribusi secara signifikan tanpa merepotkan pihak kami.”

Yang mereka lakukan

Sebelum mengadopsi app bundle, Twitter membagi aplikasi mereka secara manual ke dalam empat ABI, yang membantu mereka mengurangi ukuran dengan jumlah yang wajar. Namun, app bundle menghadirkan pendekatan yang lebih sederhana dan bahkan lebih efektif, sehingga mereka ingin beralih menggunakan app bundle.

Twitter menghabiskan waktu untuk meninjau Penandatanganan Aplikasi Play, persyaratan dari app bundle, untuk memastikan bahwa aplikasi tersebut memenuhi standar keamanan Twitter sebelum memutuskan untuk melanjutkan. “Sebelumnya kami memperhitungkan dengan matang untuk menerapkannya jauh-jauh hari,” ujar César. "Namun, saat versi akhir app bundle tersedia, penerapannya cukup sederhana, dan kami tidak melihat adanya perubahan pada perilaku aplikasi.”

Selama proses pengembangan, tim kami menggunakan bundletool untuk mengekstrak APK yang mereka distribusikan ke tim Uji Mutu. Mereka juga menguji app bundle secara ekstensif dengan sejumlah besar pengguna sebelum meluncurkannya ke produksi. Proses tersebut berjalan dengan baik, sehingga mereka mengalihkan aplikasi "dogfood" internal ke Play Store untuk cakupan yang lebih baik dan penemuan masalah yang lebih cepat.

Hasil

Saat proses konversi selesai, tim kami meluncurkan versi aplikasi baru yang telah dimodularisasi ke 13,6 juta pengguna dengan lancar. Karena rilis Twitter sebelumnya sudah dilakukan secara otomatis, proses rilis baru ini sangat mirip dengan proses yang mereka lakukan sebelumnya. Di samping itu, ada juga keuntungan tidak terduga: “Menangani satu versi ID per rilis mempermudah kami menggabungkan metrik dibandingkan empat bagian (untuk pembagian ABI) sebelumnya,” kata César.

Yang tidak kalah penting, mereka melaporkan pengurangan ukuran aplikasi sebesar 30-40% di seluruh bagian — selain pengurangan ukuran yang sebelumnya dicapai menggunakan pembagian ABI. Salah satu cara yang memungkinkan mereka melakukannya adalah dengan menggunakan modul fitur untuk mendistribusikan library native besar — 3 MB per ABI — yang hanya dibutuhkan di sebagian kecil perangkat.

Rencana Twitter selanjutnya adalah memigrasi Periscope, aplikasi berbagi video live Twitter, ke app bundle juga. Tim César juga berusaha memodularisasi seluruh aplikasi Twitter. “Setelah kami beralih ke modul fitur yang sepenuhnya terisolasi, kami ingin mempertimbangkan distribusi dinamis untuk sejumlah fitur,” kata César, sambil menambahkan bahwa prosesnya mungkin perlu waktu 6-12 bulan ke depan. César juga berharap modularisasi akan memungkinkan developer mereka menggunakan kembali modul tersebut untuk Twitter dan Periscope, guna mempersingkat waktu dan mengurangi duplikasi yang tidak diperlukan.

Memulai

Semua developer aplikasi dan game dapat menggunakan Android App Bundle. Mulai sekarang.