Case Studies
Gratitude ha registrato una fidelizzazione del 25% in più per gli utenti dei widget
Lettura di 3 minuti
Praticare la gratitudine può ridurre i sintomi di depressione e ansia e migliorare la salute mentale e la soddisfazione della vita¹. Una pratica costante della gratitudine può portare a miglioramenti duraturi per mesi². L'app di mindfulness Gratitude incoraggia la coerenza attraverso micro-diari giornalieri, affermazioni e vision board. L'app ha oltre 6 milioni di download, 150.000 valutazioni a 5 stelle e 100 milioni di voci di diario registrate.
Gli sviluppatori Divij Gupta e Narendra Aanjna hanno sviluppato widget per ciascuno dei percorsi utente principali della loro app. Il loro obiettivo era raggiungere gli utenti nei loro momenti quotidiani senza richiedere il sovraccarico di una sessione completa dell'app.
Visualizzando i prompt di journaling interattivi, le affermazioni, le immagini e le metriche della vision board direttamente nella schermata Home dell'utente, il team ha ridotto la barriera all'ingresso per la riflessione quotidiana e ha registrato un aumento del 25% della fidelizzazione per gli utenti dei widget e circa 1000 voci di diario settimanali dai widget. Questo aumento della fedeltà degli utenti si traduce in risultati sanitari tangibili per gli utenti: la formazione di abitudini coerenti che supportano il benessere mentale a lungo termine.
"I widget ci hanno aiutato a rendere l'app più presente nelle routine quotidiane degli utenti fornendo ispirazione rapida, promemoria e riflessioni direttamente nella schermata Home. Questo ha aumentato il coinvolgimento e ha reso più facile per gli utenti mantenere la coerenza con le loro pratiche di mindfulness". – Divij Gupta
La sfida: modernizzare senza ridurre la fidelizzazione
Sebbene l'impatto dei widget fosse chiaro, l'implementazione originale di RemoteViews basata su XML di Gratitude ha creato debito tecnico. Man mano che il sistema di progettazione dell'app si è evoluto verso Material 3, i widget legacy sono diventati sempre più difficili da allineare all'UI moderna. Ogni aggiornamento visivo richiedeva un sovraccarico XML manuale e soluzioni alternative fragili, rallentando la velocità degli sviluppatori.
La soluzione, parte 1: migrazione da XML a Jetpack Glance
Per modernizzare i widget, il team si è rivolto a Jetpack Glance.
Innanzitutto, hanno consultato la pagina di progettazione Widget su Android e i layout dei widget canonici per comprendere le best practice per la visualizzazione delle informazioni in uno spazio limitato.
Poi, hanno eseguito la migrazione della suite di widget a Jetpack Glance. Questo framework dichiarativo ha consentito agli sviluppatori di passare dalla pianificazione alla spedizione in meno di un mese, risparmiando circa il 50% del tempo di sviluppo, e ha visto due ulteriori vantaggi:
- La sostituzione dei layout XML restrittivi con codice dichiarativo ha reso la codebase più facile da leggere e gestire e ha ridotto l'impegno degli sviluppatori.
- Jetpack Glance ha consentito al team di implementare più facilmente colori dinamici, ridimensionamento flessibile e opzioni di configurazione ampliate. Queste funzionalità garantiscono che i widget si armonizzino con il layout unico della schermata Home di un utente.
La seguente GIF mostra due widget di Gratitude e il ridimensionamento adattivo:
Sebbene Glance abbia semplificato l'UI, il team ha notato che anche il test su vari launcher OEM era essenziale per garantire la coerenza del layout tra i dispositivi.
Il team ha anche implementato le anteprime dei widget generate in modo che gli utenti possano visualizzare anteprime personalizzate. Hanno notato che il test delle anteprime generate potrebbe essere lento, poiché le anteprime sono soggette a limitazione della frequenza per preservare la batteria. Per ignorare la limitazione della frequenza per i test, utilizza il comando adb:
adb shell device_config put systemui generated_preview_api_reset_interval_ms 0
Tutti i loro sforzi hanno reso il widget Gratitude di alta qualità e differenziato.
La soluzione, parte 2: promuovere i nuovi widget in-app
Gli sviluppatori hanno quindi utilizzato l'aggiunta di widget in-app per aumentare la rilevabilità e le installazioni dei widget. Chiedere agli utenti di installare i widget in un momento contestualmente pertinente all'interno dell'app li aiuta a trovare i widget senza dover passare per il selettore di widget di sistema. La seguente GIF mostra il riquadro inferiore di Gratitude per aggiungere widget dall'interno dell'app:
Il team ha anche eseguito il refactoring dei pacchetti di widget, che hanno modificato i percorsi dei ricevitori dei widget e causato l'eliminazione dei widget dalle schermate Home degli utenti. Utilizzando i flag utente memorizzati in precedenza per identificare gli utenti dei widget, hanno attivato un altro prompt requestPinGlanceAppWidget che invitava gli utenti dei widget a utilizzare i nuovi widget modernizzati.
Suggerimento per gli sviluppatori: per mantenere le installazioni dei widget durante la migrazione da RemoteViews a Jetpack Glance, assicurati che GlanceAppWidgetReceiver utilizzi lo stesso nome di classe e pacchetto di AppWidgetProvider precedente nel file manifest di Android. Se è necessario un nuovo nome di classe o una nuova posizione del pacchetto, segui l'esempio di Gratitude utilizzando l'aggiunta in-app per aiutare gli utenti a ripristinare i widget.
La strategia sta funzionando, poiché il 10% del totale di utenti attivi giornalieri ha adottato i widget.
Conclusione
Questa storia di Gratitude dimostra che i widget possono essere strumenti per la formazione di abitudini. Implementando azioni rapide per l'auto-riflessione direttamente dalla schermata Home, il team ha migliorato la fedeltà degli utenti. Gratitude ha ridotto il debito tecnico e modernizzato i widget adottando Jetpack Glance e ha chiesto agli utenti di aggiungere i widget all'interno dell'app.
"La nostra esperienza con Jetpack Glance è stata eccellente. L'approccio basato su Compose è molto più moderno, flessibile e in linea con il modo in cui creiamo il resto della nostra UI oggi. Ci consente di esprimere i layout dei widget in modo più naturale, riutilizzare i componenti Compose familiari ed eseguire l'iterazione delle modifiche dell'UI molto più velocemente. Molti dei vincoli dell'UI che abbiamo riscontrato in precedenza con RemoteViews non sono più un problema, il che ha reso più facile creare widget che corrispondano meglio al design e all'esperienza della nostra app". – Divij Gupta
Per iniziare
Per iniziare a utilizzare Jetpack Glance e scoprire le tecnologie menzionate in questo post, consulta queste guide:
- Panoramica di Jetpack Glance
- Pagina di progettazione Widget su Android
- Layout dei widget canonici
- Anteprime dei widget generate
- Livelli di qualità dei widget
- Aggiunta di widget in-app
- Colori dinamici
- Ridimensionamento
- Attività di configurazione
Scopri altri case study sui widget:
- L'app Contatti di Google ha creato un nuovo widget il 25% più velocemente utilizzando Jetpack Glance
- SoundCloud utilizza Jetpack Glance per creare il widget Brani piaciuti in sole 2 settimane
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). Gratitude as mood mediates the effects of a 6-weeks gratitude intervention on mental well-being: post hoc analysis of a randomized controlled trial. Front. Psychol., 12, 799447. https://doi.org/10.3389/fpsyg.2021.799447
Continua a leggere
-
Case Studies
Ultrahuman è una startup di tecnologia sanitaria per i consumatori che fornisce agli utenti informazioni quotidiane sul benessere basate sui dati biometrici dei dispositivi indossabili dell'azienda, come RING Air e M1 Live monitoraggio continuo del glucosio (CGM).
Amrit Sanjeev, Trevor Johns • Lettura di 2 minuti
-
Case Studies
Karrot è un'app marketplace peer-to-peer iperlocale basata sulla community che consente agli utenti di acquistare, vendere e scambiare articoli con altri utenti verificati. Dal lancio in Corea del Sud nel 2015, la piattaforma si è espansa nei mercati globali, accumulando oltre 43 milioni di utenti registrati.
Thomas Ezan, Tracy Agyemang • Lettura di 2 minuti
-
Case Studies
Monzo è una banca digitale del Regno Unito con 15 milioni di clienti e in crescita. Con lo scale up dell'app, il team di ingegneria ha identificato il tempo di avvio dell'app come un'area critica da migliorare, ma temeva che ciò richiedesse modifiche significative alla codebase.
Ben Weiss, Tracy Agyemang • Lettura di 2 minuti
Resta al passo con le novità
Ricevi settimanalmente nella tua casella di posta gli ultimi approfondimenti sullo sviluppo di Android.