MyJio — это ворота в мир продуктов и услуг Jio. Это универсальное место для пополнения счета, управления счетами и устройствами Jio, UPI и платежей, развлекательных услуг с фильмами, музыкой, новостями, играми, викторинами и многим другим. MyJio — одно из крупнейших приложений в Индии: более 500 миллионов установок и 150 миллионов MAU.
Более того, с появлением JioPhone NEXT (недорогого 4G-смартфона Jio) появился новый сегмент пользователей, недавно перешедший с обычных телефонов.
Учитывая такую огромную базу пользователей, проблема с производительностью, затрагивающая даже 1% пользователей, приводит к 5 миллионам пользователей. Таким образом, масштабы потребовали целенаправленных усилий по повышению производительности приложения и удобства пользователей.
Вызов
Показатели ANR и сбоев MyJio пострадали из-за того, что приложение присутствовало на большом количестве устройств среднего и низкого уровня, разбросанных по версиям Android. Было непросто обеспечить бесперебойное обслуживание клиентов, продолжая поддерживать множество устройств, некоторые из которых работали на старых и устаревших версиях Android. Для команды также было приоритетом обеспечить бесперебойную работу приложения на устройствах Android Go самого низкого уровня.
Отладка занимала значительное время, так как количество журналов было ограничено и воспроизвести сценарии было очень сложно.
Эти проблемы также напрямую повлияли на стратегию монетизации MyJio. Важным направлением работы было сделать перемещение внутри приложения плавным и снизить количество ошибок ANR. Таким образом, пользователи могли пополнять счет, генерировать потенциальных клиентов, совершать транзакции через UPI и выполнять различные другие действия без каких-либо проблем, связанных с тем, что приложение не отвечает.
Как они это сделали
Для анализа узких мест, создаваемых ошибками ANR, и сбоев в различных аппаратных конфигурациях устройств, команда MyJio использовала Play Console, Android Studio (для разработки и отладки), Firebase Crashlytics и многое другое.
Команда применила целенаправленный подход к решению следующих проблем:
- Выявлены ошибки широковещательной передачи, ошибки повторной компоновки и ошибки ANR из-за блокировки потоков на устройствах (особенно на устройствах с небольшим объемом памяти).
- Обнаружены ошибки ANR, связанные с Compose, которые препятствовали отрисовке Dashboard согласно трассировке стека.
- После наблюдения ошибок ANR в Play Console они проверили приложение MyJio в строгом режиме в Android Studio и приступили к устранению проблем, которые блокировались в основном потоке, одну за другой.
- Включены оповещения об ошибках скорости в Firebase Crashlytics, чтобы любые аномалии немедленно выделялись.
- За интеграцией сторонних SDK внимательно следили, чтобы они не занимали основной поток более 300 мс.
Результаты
При реализации этих изменений команде MyJio пришлось учитывать различные конфигурации устройств. Им также пришлось принять во внимание приток новых пользователей, перешедших с обычных телефонов на смартфон JioPhone NEXT 4G.
Команда добилась следующих результатов:
- На 20 % меньше отзывов пользователей о медленности приложений, сбоях и ошибках ANR. Это напрямую привело к сокращению времени сеанса пользователей на 15 %.
- Улучшение показателя ANR на 40 %
- Время горячего запуска улучшено на 70%.
- Рейтинги Play Store улучшились на 18 %.
- Улучшение времени сеанса на 15%
Скорость и продуктивность команды всегда растут, и эти улучшения еще больше подняли моральный дух команды.
«Одержимость предоставлением пользователям лучших в своем классе услуг — это видение, которое разделяют Jio и Google. Это партнерство помогло нам еще больше повысить клиентоориентированность с помощью JioPhone Next; позволяя совершить новую цифровую революцию для неиспользованного круга пользователей. Поскольку все больше и больше пользователей присоединяются к различным демографическим группам, устройствам и версиям Android, становится обязательным обеспечить опыт и оптимизацию для всех пользователей, особенно для новых участников цифрового мира».
– Мохсин Аббас, вице-президент, руководитель отдела продуктов и разработок для клиентских и партнерских каналов, MyJio