Fitur Ucapan Terima Kasih meningkatkan retensi pengguna widget sebesar 25%
Waktu baca: 3 menit
Mempraktikkan rasa syukur dapat mengurangi gejala depresi dan kecemasan, serta meningkatkan kesehatan mental dan kepuasan hidup¹. Praktik rasa syukur yang konsisten dapat menghasilkan peningkatan berkelanjutan yang berlangsung selama berbulan-bulan². Aplikasi mindfulness Gratitude mendorong konsistensi melalui jurnal harian mikro, afirmasi, dan papan visi. Aplikasi ini telah didownload lebih dari 6 juta kali, memiliki 150 ribu rating 5 bintang, dan 100 juta entri jurnal yang dicatat.
Developer Divij Gupta dan Narendra Aanjna mengembangkan widget untuk setiap perjalanan pengguna inti aplikasi mereka. Tujuan mereka adalah menjangkau pengguna dalam momen sehari-hari mereka tanpa memerlukan overhead sesi aplikasi penuh.
Dengan menampilkan perintah jurnal interaktif, afirmasi, gambar papan visi, dan metrik langsung di layar utama pengguna, tim menurunkan hambatan untuk memulai refleksi harian dan melaporkan peningkatan retensi sebesar 25% untuk pengguna widget dan ~1.000 entri jurnal mingguan dari widget. Peningkatan loyalitas pengguna ini menghasilkan hasil kesehatan yang nyata bagi pengguna: pembentukan kebiasaan yang konsisten yang mendukung kesejahteraan mental jangka panjang.
“Widget membantu kami membuat aplikasi lebih hadir dalam rutinitas harian pengguna dengan memberikan inspirasi, pengingat, dan refleksi cepat langsung di layar utama. Hal ini meningkatkan engagement dan memudahkan pengguna untuk tetap konsisten dengan praktik mindfulness mereka.” – Divij Gupta
Tantangan: memodernisasi tanpa mengurangi retensi
Meskipun dampak widget sudah jelas, penerapan RemoteViews berbasis XML asli Gratitude menciptakan utang teknis. Seiring berkembangnya sistem desain aplikasi ke Material 3, widget lama menjadi semakin sulit diselaraskan dengan UI modern. Setiap update visual memerlukan overhead XML manual dan solusi sementara yang tidak stabil, sehingga memperlambat kecepatan developer.
Solusi Bagian 1: memigrasikan dari XML ke Jetpack Glance
Untuk memodernkan widget mereka, tim beralih ke Jetpack Glance.
Pertama-tama, mereka membuka halaman desain Widget di Android dan tata letak widget kanonis untuk memahami praktik terbaik dalam menampilkan informasi dalam ruang yang terbatas.
Kemudian, mereka memigrasikan rangkaian widget ke Jetpack Glance. Framework deklaratif ini memungkinkan developer beralih dari perencanaan ke pengiriman dalam kurang dari sebulan, menghemat sekitar 50% waktu pengembangan, dan memperoleh dua keuntungan tambahan:
- Mengganti tata letak XML yang ketat dengan kode deklaratif membuat codebase lebih mudah dibaca, dikelola, dan mengurangi upaya developer.
- Jetpack Glance memungkinkan tim mengimplementasikan warna dinamis, pengubahan ukuran yang fleksibel, dan opsi konfigurasi yang diperluas dengan lebih mudah. Fitur ini memastikan widget selaras dengan tata letak layar utama unik pengguna.
GIF berikut menunjukkan dua widget Ucapan Terima Kasih dan pengubahan ukuran adaptif:
Meskipun Glance menyederhanakan UI, tim mencatat bahwa pengujian di berbagai peluncur OEM juga penting untuk memastikan konsistensi tata letak di seluruh perangkat.
Tim juga menerapkan Pratinjau Widget yang Dibuat sehingga pengguna dapat melihat pratinjau yang dipersonalisasi. Mereka mencatat bahwa pengujian Pratinjau yang Dibuat mungkin lambat, karena pratinjau dibatasi kecepatan untuk menghemat baterai. Untuk melewati pembatasan kapasitas untuk pengujian, gunakan perintah adb:
adb shell device_config put systemui generated_preview_api_reset_interval_ms 0
Semua upaya mereka telah membuat widget Ucapan Terima Kasih berkualitas tinggi dan berbeda.
Solusi Bagian 2: mempromosikan widget baru dalam aplikasi
Kemudian, developer menggunakan penyematan widget dalam aplikasi untuk meningkatkan penemuan widget dan penginstalan widget. Meminta pengguna menginstal widget pada saat yang relevan secara kontekstual dalam aplikasi membantu pengguna menemukan widget mereka tanpa perlu membuka pemilih widget sistem. GIF berikut menunjukkan sheet bawah Gratitude untuk menambahkan widget dari dalam aplikasi:
Tim juga memfaktorkan ulang paket widget, yang mengubah jalur penerima widget dan menyebabkan widget dihapus dari layar utama pengguna. Dengan menggunakan tanda pengguna yang disimpan sebelumnya untuk mengidentifikasi pengguna widget, mereka memicu perintah requestPinGlanceAppWidget lain yang mengundang pengguna widget untuk menggunakan widget baru yang dimodernisasi.
Tips Developer: Untuk mempertahankan penginstalan widget saat bermigrasi dari RemoteViews ke Jetpack Glance, pastikan GlanceAppWidgetReceiver menggunakan nama class dan paket yang sama dengan AppWidgetProvider sebelumnya di Android Manifest. Jika nama class atau lokasi paket baru diperlukan, ikuti langkah-langkah Gratitude dengan menggunakan penyematan dalam aplikasi untuk membantu pengguna memulihkan widget mereka.
Strategi ini berhasil, karena 10% dari total DAU telah menggunakan widget.
Kesimpulan
Kisah Gratitude ini menunjukkan bahwa widget dapat menjadi alat untuk membentuk kebiasaan. Dengan menerapkan tindakan cepat untuk melakukan refleksi diri langsung dari layar utama, tim meningkatkan loyalitas pengguna. Gratitude mengurangi beban teknis dan memodernisasi widget mereka dengan mengadopsi Jetpack Glance, serta mendorong pengguna untuk menambahkan widget dalam aplikasi mereka.
“Pengalaman kami dengan Jetpack Glance sangat luar biasa. Pendekatan berbasis Compose terasa jauh lebih modern, fleksibel, dan selaras dengan cara kita membangun UI lainnya saat ini. Hal ini memungkinkan kita mengekspresikan tata letak widget dengan lebih alami, menggunakan kembali komponen Compose yang sudah dikenal, dan melakukan iterasi pada perubahan UI dengan lebih cepat. Banyak batasan UI yang sebelumnya kami hadapi dengan RemoteViews tidak lagi menjadi masalah, sehingga memudahkan kami membangun widget yang lebih sesuai dengan desain dan pengalaman aplikasi kami.” – Divij Gupta
Memulai
Untuk mulai menggunakan Jetpack Glance dan mempelajari teknologi yang disebutkan dalam postingan ini, lihat panduan berikut:
- Ringkasan Jetpack Glance
- Halaman desain Widget di Android
- Tata letak widget kanonis
- Pratinjau Widget yang Dibuat
- Tingkatan Kualitas Widget
- Penyematan widget dalam aplikasi
- Warna dinamis
- Mengubah ukuran
- Aktivitas konfigurasi
Lihat studi kasus widget lainnya:
- Aplikasi Kontak Google membuat widget baru 25% lebih cepat menggunakan Jetpack Glance
- SoundCloud menggunakan Jetpack Glance untuk membuat widget Lagu yang Disukai hanya dalam 2 minggu
1: Diniz, G., Korkes, L., Tristão, L. S., Pelegrini, R., Bellodi, P. L., & Bernardo, W. M. (2023). The effects of gratitude interventions: a systematic review and meta-analysis. einstein (Sao Paulo)., 21, eRW0371. https://doi.org/10.31744/einstein_journal/2023RW0371
2: Bohlmeijer, E., Kraiss, J., Schotanus-Dijkstra, M., & ten Klooster, P. (2022). Rasa syukur sebagai suasana hati memediasi efek intervensi rasa syukur selama 6 minggu terhadap kesejahteraan mental: analisis post hoc uji coba terkontrol acak. Depan. Psychol., 12, 799447. https://doi.org/10.3389/fpsyg.2021.799447
-
Studi KasusUltrahuman adalah startup teknologi kesehatan konsumen yang memberikan insight kesejahteraan harian kepada pengguna berdasarkan data biometrik dari perangkat wearable perusahaan, seperti RING Air dan M1 Live Continuous Glucose Monitor (CGM).
Amrit Sanjeev, Trevor Johns • Waktu baca: 2 menit -
Studi KasusTim ini membangun codebase UI yang dibuat khusus untuk AI yang 50% lebih kecil daripada penerapan aslinya, sekaligus mencapai pengurangan waktu eksekusi agen AI sebesar 35%, pengurangan pertukaran engineer-agen sebesar 32%, dan pengurangan biaya token sebesar 33%.
Pavlo Stavytskyi, Rebecca Franks • Waktu baca: 11 menit -
Studi KasusWhatsApp adalah platform pesan terbesar di dunia, yang melayani miliaran pengguna secara global. Aplikasi ini adalah alat komunikasi default bagi orang-orang di berbagai wilayah, yang menghubungkan pengguna melalui pesan pribadi, andal, dan aman.
Niharika Arora, Tracy Agyemang, Mayank Jain • Waktu baca: 8 menit
Dapatkan insight pengembangan Android terbaru yang dikirim ke kotak masuk Anda setiap minggu.