Оптимизация и устранение багов мобильного приложения сети АЗС
Завдання
Наш клієнт — таджицька компанія «Сугдніфть», яка займається оптовою та роздрібною торгівлею палива для партнерів та власної мережі АЗС. Замовник звернувся до нас із проблемою: мобільний додаток «Sugdneft» почав працювати повільно, а відсутність функції push-повідомлень ніяк не сприяє збільшенню продажів.
Розробники Webnauts часто мають справу з виправленням багів існуючих програмних продуктів. Це не легше, ніж писати код з нуля, як думають багато клієнтів. Однак немає такої помилки, яку ми не змогли б виправити.
Отже, наш mobile-розробник засукав рукави, включив опцію «мислити, як баг», знайшов недосконалості мобільного додатка на React Native для «Sugdneft» і взявся до роботи.
Технологічні рішення
Оптимізація швидкості роботи програми
Розглянемо головну причину, яка призвела до високого споживання пам’яті та низької швидкості роботи програми. З сервера бази даних, який зберігає всю інформацію про клієнтів, транзакції тощо, додаток надходили фото, локальні зображення та іконки в повному розмірі з роздільною здатністю близько 2 000 пікселів.
Нашим завданням стала оптимізація розміру всіх видів зображень, що надходять із сервера. Для покращення продуктивності програми ми застосували бібліотеку для стиснення фото до 720 пікселів на сервері і вручну стиснули усі статичні зображення у програмі. Таким чином, зменшивши кількість пікселів у фотоконтенті, ми трохи втратили деталізацію, але виграли в оптимізації.
Реалізація push-повідомлень у мобільному додатку
Грамотно реалізована Push-технологія може стати чудовим маркетинговим інструментом у сфері послуг та торгівлі. Тому ми вирішили додати таку необхідну функцію.
Push-сповіщення — це короткі системні повідомлення, які надходять користувачеві в браузері або мобільному додатку з ініціативи сервера на основі певних встановлених параметрів. Таким чином, таргетована інформація у вигляді спливаючих повідомлень повертає користувача до програми, а значить, підвищує ймовірність повторної або додаткової покупки. Push-сповіщення, реалізовані справжніми професіоналами, здатні збільшити показник повернення користувачів до програми в 2 рази.
Додаток нашого клієнта «Сугдніфть» містить у собі корисну інформацію про послуги та плюшки компанії:
- актуальні ціни на пальне;
- історія покупок;
- накопичувальна картка;
- акції та знижки;
- маршрути до АЗС;
- зворотний зв’язок.
Однак якщо не нагадувати клієнтам про новини та акції компанії, інформація залишиться просто інформацією, а програма загубиться серед багатьох інших іконок на робочому столі смартфона.
Щоб покращити комунікацію з користувачами «Sugdneft», ми реалізували push-сповіщення про досконалу купівлю, зміну цін на пальне, а також новини та акції компанії. Для цього було використано Google-сервіс Firebase, який дозволив повністю реалізувати логіку відображення push-повідомлень на смартфоні. А завдяки невеликій модифікації на сервері ми сегментували клієнтів та налаштували індивідуальні push-сповіщення.
Підсумки
Наша команда реалізувала завдання клієнта «Сугдніфть» протягом тижня – провели дебаггінг, доопрацювання та оптимізацію мобільного додатку на React Native для Android.
За допомогою підключення push-повідомлень ми досягли збільшення залученості користувачів, а оптимізувавши зображення – знизили споживання оперативної пам’яті та прискорили швидкість роботи програми. Так, до оптимізації зображень обсяг займаної оперативної пам’яті на деяких екранах становив від 500 до 900 Мб, після – не перевищував 350 Мб.