MyJio est la passerelle vers le monde des produits et services Jio. Il s'agit d'une plate-forme tout-en-un pour les recharges, la gestion des comptes et des appareils Jio, les paiements et UPI, les services de divertissement avec des films, de la musique, des actualités, des jeux, des quiz et bien plus encore. Avec plus de 500 millions d'installations et 150 millions d'utilisateurs actifs mensuels, MyJio est l'une des plus grandes applications en Inde.
De plus, avec l'arrivée du JioPhone NEXT (le smartphone 4G à bas prix de Jio), un nouveau segment d'utilisateurs, récemment migré depuis les feature phones, est venu s'ajouter.
Pour une base d'utilisateurs aussi vaste, un problème de performances affectant même 1 % des utilisateurs se traduit par 5 millions d'utilisateurs. L'ampleur de la tâche a donc nécessité un effort spécifique pour améliorer les performances de l'application et l'expérience utilisateur.
Le défi
Les métriques ANR et de plantages de MyJio étaient en baisse, car l'application était présente sur un grand nombre d'appareils de milieu et d'entrée de gamme répartis sur différentes versions d'Android. Il était difficile de fournir une expérience client fluide tout en continuant à prendre en charge une variété d'appareils, dont certains fonctionnaient avec des versions Android plus anciennes et obsolètes. L'équipe a également fait en sorte que l'application fonctionne correctement sur les appareils Android Go les moins performants.
Le débogage a pris beaucoup de temps, car le nombre de journaux était limité et il était très difficile de reproduire les scénarios.
Ces défis ont également eu un impact direct sur la stratégie de monétisation de MyJio. L'un des principaux objectifs était de rendre les parcours dans l'application fluides et de réduire le nombre d'erreurs ANR. Les utilisateurs peuvent ainsi recharger leur compte, générer des prospects, effectuer des transactions via UPI et diverses autres activités sans se soucier de l'absence de réponse de l'application.
Mode opératoire
Pour analyser les goulots d'étranglement créés par les erreurs ANR et les plantages sur différentes configurations matérielles d'appareils, l'équipe MyJio s'est appuyée sur la Play Console, Android Studio (pour le développement et le débogage), Firebase Crashlytics et plus encore.
L'équipe a adopté une approche ciblée pour résoudre les problèmes suivants :
- Erreurs ANR de diffusion identifiées, erreurs ANR de recomposition et erreurs ANR dues au blocage du thread de rendu sur les appareils (en particulier ceux disposant de peu de mémoire).
- Nous avons observé des ANR liées à Compose qui entravaient le rendu du tableau de bord, selon la trace de la pile.
- Après avoir observé des erreurs ANR dans la Play Console, ils ont vérifié l'application MyJio en mode strict dans Android Studio et ont corrigé les problèmes un par un qui bloquaient le thread principal.
- Nous avons activé le signalement des erreurs d'alertes de vitesse dans Firebase Crashlytics afin que toute anomalie soit immédiatement mise en évidence.
- L'intégration des SDK tiers a été surveillée de près afin qu'ils n'occupent pas le thread principal pendant plus de 300 ms.
Résultats
L'équipe MyJio a dû tenir compte des différentes configurations d'appareils lors de l'implémentation de ces modifications. Ils devaient également tenir compte de l'afflux de nouveaux utilisateurs qui passaient d'un téléphone classique au smartphone JioPhone NEXT 4G.

L'équipe a obtenu les résultats suivants :
- Réduction de 20 % des commentaires des utilisateurs concernant la lenteur, les plantages et les ANR de l'application. Cela s'est directement traduit par une amélioration de 15 % de la durée des sessions utilisateur.
- Amélioration du taux d'erreurs ANR de 40 %
- Temps de démarrage à chaud amélioré de 70 %
- Amélioration de 18 % des notes sur le Play Store
- Amélioration de 15 % de la durée des sessions
La vélocité et la productivité de l'équipe sont en constante augmentation, et le fait de voir ces améliorations se concrétiser a encore renforcé le moral de l'équipe.
"La volonté de fournir les meilleurs services aux utilisateurs est une vision partagée par Jio et Google. Ce partenariat nous a aidés à aller plus loin dans l'orientation client avec le JioPhone Next, ce qui a permis une nouvelle révolution numérique pour un ensemble d'utilisateurs inexploité. Avec l'arrivée de plus en plus d'utilisateurs de tous âges, sur différents appareils et avec différentes versions d'Android, il est impératif de proposer une expérience et des optimisations pour tous les utilisateurs, en particulier les nouveaux venus dans le monde numérique."
– Mohsin Abbas, vice-président et responsable des produits et de l'ingénierie pour les canaux client et partenaire, MyJio