Если верить открытым источникам, рынок электросамокатов в России главным образом держат Whoosh и Urent (хотя сейчас ещё Яндекс вклинивается, и с его ресурсами это вполне возможно). При этом у Urent больше городов и больше самокатов, чем у Whoosh, но ниже доходы.
Я подумал: наверняка бизнес-аналитики Urent днями и ночами сидят и ломают голову, что бы им поменять и улучшить, чтобы начать выигрывать эту конкуренцию. Строят теории, проводят тесты. Сложная работа, в общем, бизнес и рынок не такие предсказуемые вещи.
А потом я воспользовался Urent и за 5 минут нашел столько косяков UI/UX в приложении, что мне стало всё понятно. Кроме того, почему Urent ничего с этими косяками не делает.
1. Сканирование кода в Whoosh приводит к появлению полноэкранной модалки с большими кнопками и основной информацией о самокате и стоимости. Сканирование кода в Urent выдает в самом низу экрана блок кнопок, в которые не только очень сложно попасть, но его ещё и надо скроллить (см. левый скриншот). При этом весь экран занят уже не нужной к этому моменту камерой. Такой интерфейс заточен под перебор самокатов, но на деле человеку на улице на ходу нужно просто максимально быстро взять первый самокат, к которому он подошёл.
2. О том, что страховка включена и будет стоить дополнительных денег, можно догадаться только за счёт знания об этой функции из других сервисов. Да, Whoosh, конечно, поступает очень по-мудачески, постоянно автоматически включая платную страховку, из-за чего её надо выключать вручную каждый раз при каждом заказе. Но в Urent необходимость этого действия ещё и довольно неочевидна (а страховка тоже, конечно же, по-умолчанию всегда включена).
3. Я отсканировал самокат, затем нажал подтверждение заказа. Система после этого написала мне, что данный самокат недоступен. Неужели, нельзя об этом писать ещё на этапе сканирования? Зачем выводить кнопку заказа для недоступного самоката?
4. Кнопка перехода к текущей геопозиции перекрыта неубирающейся шторкой снизу (см. правый скриншот).
И это только вещи, которые прям за первые 5 минут выявляются и очень на поверхности. А исправить их может один программист и один дизайнер за пару недель. Удивительно, как некоторые бизнесы не хотят зарабатывать.
#dev
🤖 Вышла Material Components for Android 1.1.3 с компонентами из Material 3 Expressive (но пока еще не всё)
Что добавили из комнентов:
👉DockedToolbarLayout - компонент для показа действий на текущем экране/странице (обычно закреплен в нижний части экрана)
👉FloatingToolbarLayout - плавающий набор действия для текущего экрана/страницы
👉LoadingIndicator - новые индикаторы ожидания
👉MaterialSplitButton - разделенная кнопка
👉MaterialButtonGroup - компонент для группировки нескольких кнопок
Что ещё из важного:
👉 Минимальный Android SDK подняли до 21
👉 Включили nonTransitiveRClass (про последствия для вас читайте тут)
👉 Официальная поддержка Material 3 Expressive будет в версии 1.14.0. Уже есть альфа версии
🛠 Много улучшений существующих компонентов и исправления багов
#android#material3#material3expressive
🚀Вышел Jetpack Compose Material3 Adaptive 1.2.0
Если коротко про изменения — Material3 Adaptive всё ближе к полноценному “Responsive Compose”. Теперь можно писать интерфейсы, которые одинаково естественно ведут себя на телефоне, планшете и десктопе.
Главное:
🪶 Levitate-стратегия для ThreePaneScaffold — превращает панель в плавающее окно (popup).
↔️ Reflow-стратегия для ThreePaneScaffold — позволяет при узком экране уводить одну панель под другую, сохраняя UX.
👉 PaneScaffoldScope.saveableStateHolder — сохраняет состояние между разными конфигурациями экрана.
👉 Modifier.preferredHeight() — теперь можно задать предпочтительную высоту панели.
📏 Новые WindowSizeClasses: API currentWindowAdaptiveInfo() теперь распознаёт Large и ExtraLarge окна — важный шаг к поддержке планшетов и десктопов.
👉 Drag-to-resize получил настройку пользовательского поведения и поддержку a11y (accessibility).
🏝 Плюс: обновлён Kotlin 2.0, переработано API стратегий, исправлены ошибки с анимациями и рендерингом при адаптации.
#compose#material3#adaptive#android#jetpack
🤖Редизайн WearOS с Material 3 Expressive
Google WearOS 6 получит редизайн на основе Material 3 Expressive. Обещают что изменения дизайна не повлияют на время работы часов, а даже наоборот - в WearOS 6 станет на 10% дольше времени работы
Как пользователь Google Pixel Watch могу сказать что показанное меня очень радует. Сейчас дизайн неудобный
#android#wearos#material3#material3expressive
📹Адаптивная Android разработка сделает ваше приложение классным на любом устройстве - Google IO 2025
Очень полезный доклад про разработку адаптивного приложения по дизайну, фичам и поведению. Учитывая, стойкий тренд перехода Android разработки в KMP это как никогда актуально!
#android#adaptive#material3#jetpack#googleio
🤖Вышла библиотека Wear Compose 1.5 с поддержкой Material 3 Expressive
Обновленная библиотека содержит все виджеты для реализации приложения в новом дизайне Google
Помимо этого выпустили
👉Обновленную документацию по дизайну приложений
👉Руководство по миграции на Material 3
👉Примеры на GitHub
#android#wearos#material3expressice#material3
🤯Navigation Drawer становится Deprecated
В Material 3 Expressive делают deprecated компонент "Navigation Drawer". Заменой ему предлагают "Navigation Rail", предлагающий ту же функциональность, но лучше адаптирующийся под разные размеры окна
#ui#material#material3#material3expressive
‼️Google отменяет Compose Material Icons
С релизом Compose Material 3 — версии 1.4.0 Google сделала радикальный шаг: библиотека androidx.compose.material.icons исключена из Material3 и больше не рекомендуется к использованию.
Что произошло
👉 Material Icons удалены из актуального релиза Material3 1.4.0
👉 Поддержка библиотеки прекращена
👉 Можно подключить вручную, но это временная мера для тех, кто не успел мигрировать
❌ Основная причина отказа - негативное влияние на скорость сборки. Библиотека Material Icons тащит весь огромный набор иконок. Это ощутимо увеличивает build time крупных Android и Compose Multiplatform проектов.
Google предлагает переходить на Vector Drawable XML в Android или Compose Multiplatform ресурсах. Скачивайте иконки с вкладки Android на странице Material Symbols и храните в ресурсах проекта
Преимущества использования Material Symbole:
✔️ актуальный набор иконок
✔️ минимальный вес и отсутствие лишних зависимостей
✔️ предсказуемое время сборки
✔️ лучший контроль над ресурсами проекта
❗️ Обновлений библиотеки Material Icons не будет!
Источник - официальная документация Android Jepack
Благодарю подписчика Evgeny F. за то, что обратил внимание на изменение.
#Android#AndroidJetpack#Material3#Compose#CMP
🤖Адаптивность UI в Android-приложениях
Android-приложения запускаются на экранах с разными размерами и ориентацией. Чтобы интерфейс выглядел хорошо в любых условиях, стоит учитывать несколько простых правил, которые я выработал за годы опыта 👇
1️⃣Не привязывайтесь к фиксированным размерам
Фиче может быть выделен весь экран, часть окна или вообще маленький контейнер. Пусть она сама решает: занять всё пространство или только необходимое. Остальное — задача хоста, который через параметры (например, Modifier в Compose) подстроит отображение или сама правильно разместит (например, по центру).
2️⃣Используйте адаптивные компоненты
Вместо LazyColumn — лучше LazyVerticalGrid, а для RecyclerView — GridLayoutManager. Они умеют подстраивать сетку под свободное место на экране.
3️⃣Закладывайтесь на увеличение текста и элементов
Пользователь может менять скейл интерфейса: Google позволяет масштабировать всё, увеличивая DP → PX. Поэтому всегда предусмотрите скролл, если контента может стать больше.
4️⃣UI фичи не должен знать, где он окажется
Фича отвечает только за свой UI. А вот приложение решает, как её показать: в одну панель или, например, в связке через ListDetailPaneScaffold, где на экране могут быть сразу несколько экранов.
Даже если дизайнер подготовил макет только под смартфон в вертикали — попробуйте включить воображение. Немного гибкости и масштабирования дадут пользователям куда более удобный опыт без больших трудозатрат.
📚 Что почитать:
- Практики по построению адаптивных приложений
- Compose Material 3 Adaptive
- Jetpack WindowManager
- Как строить адаптивный UI через layout
💬 Делитесь в комментариях своими советами и болями адаптивности UI
#android#ui#compose#adaptive#ux#material3
На сайте Android Developers стали выкатывать обновления существующих руководств с интеграцией Material 3 Expressive дизайна, а именно:
👉Help & Feedback
👉Settings
👉Настройки App Widget
👉Edge-to-edge дизайн
#material#material3#materialexpressive#m3