Пишу мессенджер для людей: загрузка на мобильном устройстве
Экспериментирую с загрузкой мессенджера на телефончиках. В эксперименте участвуют 2 устройства: iPhone16 и Huawei P30 Lite (довольно старое устройство).
WhatsApp, Telegram запускаются достаточно быстро, в течение 1.2 - 2с
Приложения Aliexpress, Alibaba, Avito, ТБанк, Сбербанк запускаются прямо таки долговато. Секунд 3 - 5. А Лента вообще рекордсмен у меня, 6 секунд включается. Вместо того чтобы загрузить скидочный код за 0.000001c и уйти на покой, грузит непонтяно что.
Cреда разработки приложений пока нативная (то есть Cтудия и XCode).
Так вот, я в приложении пока создал тестовую БД полей на 80. И гружу их. В основном просто числа и всякие строки типа имени, ника и тп. Запускается приложение за 0.2-0.5c на Huawei.
На iPhone даже лого не успеваю разглядеть, оно промелькивает и выглядит как баг. Но неважно, мелькает и мелькает, пусть будет.
Вообще, приложение у меня грузилось в самом начале секунд 7 и что-то мне поплохело через пару дней работы. Захотелось Huawei 12-го года выкинуть в окно и остаться на iPhone 😂😂 Задумался "а может разработчики приложения Лента не так и плохи, на самом деле загрузка - дело небыстрое, и нужно реально поработать над ней".
Ну как пришлось поработать, посмотрел на то что грузится и как грузится и понял где затыки. Каринки, в основном, тормозят и запросы к памяти - самое узкое место.
Решил попробовать разбить загрузку на части и распараллелил: бд в кэш залетат в одном потоке, картинки в другом. Интерфейс вообще своей жизнью стал жить. А SVG заменил на PNG. А, ну и ГРУЗИТЬ ВСЕ НА СВЕТЕ ПРИ СТАРТЕ НЕ СЛЕДУЕТ, нужно грузить только самое основное, желательно ничего, а все остальное лениво грузить. В результате загрузка мессенджера "летает".
Пока особо скринами делиться не могу так как ну их немного у меня, да и внешний вид приложения такой, будто его совсем не дизайнер делал. За этот вечер успел экранчик ввода пароля собрать, делюсь:
Так, разработчики приложения Лента. Ну я не знаю как так получилось так, что у вас оно более секунды грузится. Тот же вопрос адресую и остальным (в основном Сберу и ТБанку).
Кстати, понравились мне эмодзи в логах. Прямо очень. На скрине можете заметить. Когда показывал другим разрабам, они что-то нос воротили. Не знаю, на вкус и цвет кому-то язык разработки Dart нравится 😂
Что касается веса приложения. Я пока не взвешивал, основной упор делаю на скорость. Но над весом тоже работаю, стараюсь не добавлять кучу лишнего мусора в код. Позже как-нибудь отчитаюсь и по весу.
Наверно хватит на сегодня новостей. Кому интересно, можете подписаться куда-нибудь на меня, попробуете месенджер первым, если этот проект кому-то вообще интересен.
Постепенно буду дальше делиться успехами :)

Лига Геймеров
57.3K постов92K подписчика
Правила сообщества
Ничто не истинно, все дозволено, кроме политоты, за нее пермач, идите на ютуб
Помни!
- Новостные/информационные публикации постим в pikabu GAMES
- Развлекательный контент в Лигу Геймеров
Нельзя:
Попрошайничать;
Рекламировать;
Оскорблять участников сообщества;
Нельзя оценивать Toki Tori ниже чем на 10 баллов из 10;
Выкладывать ваши кулвидосы с только что зареганных акков - пермач
За неэтичное использование сообщества - тоже бан. Если ты выкладываешь пост в наше сообщество и получаешь стартовые плюсы от наших подписчиков, не думай, что вытаскивать потом пост в своё личное сообщество будет умным поступком.