Pull to refresh
14
0
Владислав Шипугин @shipa_o

Android-разработчик

Send message

Оптимизация анимации на Compose: крутим лоадеры, ищем неочевидные функции

Level of difficulty Medium
Reading time 10 min
Views 4.4K

Android-разработчик red_mad_robot Серёжа Чумиков рассказывает о том, как сделать классную анимацию, не перегрузив смартфон, почему ей не нужна рекомпозиция и как её избежать.

Читать далее
Total votes 1: ↑1 and ↓0 +1
Comments 1

Осознанная оптимизация Compose

Level of difficulty Medium
Reading time 29 min
Views 33K

Compose — относительно молодая технология написания декларативного UI. Множество разработчиков даже не предполагают, что пишут неоптимальный код в такой критически важной части, и впоследствии это приводит к неожиданной низкой производительности и проседании метрик.

Наша команда Ozon Seller также столкнулась с этой проблемой. Мы решили собрать воедино все советы и наработки по написанию оптимизированного Compose-кода. Активное применение этих советов при оптимизации существующих экранов и написании новых существенно улучшило наши метрики: длительность лага по отношению к длительности скролла (hitch rate; чем меньше, тем лучше) экранов со списками упала в среднем с 15-19 % до 5-7 % (на 90-м перцентиле). Все эти советы и наработки мы описали в этой статье. Она будет полезна и начинающим, и опытным разработчикам, в ней подробно описаны оптимизации и механизмы Compose, а также рассказано про слабо задокументированных особенности и исправления ошибок, которые есть в других статьях. Давайте же начнём.

Читать далее
Total votes 37: ↑37 and ↓0 +37
Comments 15

Как прогнать все UI-тесты на мерж-реквесте и не состариться

Reading time 12 min
Views 6.3K

Рано или поздно большой продукт сталкивается с проблемой количества тестов, а точнее с тем, сколько времени нужно, чтобы их прогнать. При этом не все команды готовы тратить кучу сил на оптимизацию этого процесса. Гораздо проще решить проблему с помощью большого количества эмуляторов или ресурсов на CI. 

В этой простыне текста хочу рассказать про то, как мы уменьшили время прогона UI-тестов на мерж-реквесте с 4 часов до 30 минут, какие есть подходы к решению проблемы и как сделать свой Test Impact Analysis.

Читать далее
Total votes 11: ↑10 and ↓1 +9
Comments 4

Отчёт с Android Devs Meetup 17 марта

Reading time 1 min
Views 8.3K
image

17 марта в нашем офисе прошла новая встреча Android-разработчиков — Android Devs Meetup, на которой выступили аж четыре докладчика. И по уже сложившейся традиции предлагаем всем желающим посмотреть видеозаписи и презентации выступлений.
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Comments 2

CameraX+ML Kit для распознавания номера карты в действии

Reading time 8 min
Views 7.7K

Привет, меня зовут Виталий Беляев, я Android-разработчик в red_mad_robot. В этой статье я расскажу про опыт интеграции CameraX с ML Kit на замену библиотеки card.io, и что в итоге из этого получилось.

Читать далее
Total votes 8: ↑7 and ↓1 +6
Comments 7

Как «приручить» консоль, или 5 шагов к жизни с командной строкой

Reading time 15 min
Views 24K

Всем привет! Меня зовут Осип, я Android-разработчик в red_mad_robot и я люблю автоматизировать всё, что автоматизируется. В этом мне помогает консоль, поэтому решил поделиться опытом, как настроить командную оболочку так, чтобы в ней было приятно работать и она ежедневно помогала вам решать задачи.

Статья для тех, кто использует Linux или macOS. Если у вас Windows, вы можете использовать WSL (приравнивается к Ubuntu).

Читать далее
Total votes 25: ↑24 and ↓1 +23
Comments 33

Быстрый старт: гайд по автоматизированному тестированию для Android-разработчика. JVM

Reading time 36 min
Views 10K

Привет! Меня зовут Сергей Иванов, я ведущий разработчик Android в Redmadrobot. С 2016 использую автотесты различных категорий и успел в этом набить немало шишек. Именно поэтому решил поделиться опытом. Возможно, кому-то статья поможет систематизировать знания или начать применять эту практику в работе. 

Читать далее
Total votes 15: ↑15 and ↓0 +15
Comments 5

Разрабы работают медленно и дорого — и люди считают нас лентяями. Просто в разработке всё сложно

Reading time 7 min
Views 75K

— Люди не из индустрии вечно не понимают программистов: что они там такое сложное делают, если видно только две кнопки? Что за непонятные слова говорят? Почему так много получают?


Вместе с парнями из подкаста «Мы обречены» решили с этим разобраться и запустили совместную рубрику, где будем объяснять, почему в разработке всё так сложно. А для тех, кто любит читать, а не слушать, парни написали эту статью.


Читать дальше →
Total votes 219: ↑183 and ↓36 +147
Comments 533

Android-разработчикам: как сократить время реализации тёмной темы с пары месяцев до недели

Reading time 21 min
Views 13K

Привет, меня зовут Влад Шипугин, я Android-разработчик в Redmadrobot. В этой статье я хочу поделится опытом реализации темной темы, создания удобного UI Kit, как для разработки, так и для дизайнеров. Я расскажу про использование Material Components и работу с Vector Drawable. Также вы узнаете, как быстро поддержать режим edge-to-edge с использованием Window Insets и познакомитесь с моей библиотекой — edge-to-edge-decorator.

Читать далее
Total votes 21: ↑20 and ↓1 +19
Comments 7

FigmaExport: как автоматизировать экспорт UI-Kit из Figma в Xcode и Android Studio проекты

Reading time 11 min
Views 27K


Если вы iOS- или Android-разработчик и дизайн вашего проекта разрабатывается в Figma, то скорее всего вы сталкиваетесь с проблемами при экспорте ресурсов: цвета выгрузить нельзя, а иконки и картинки экспортировать неудобно. В этой статье я расскажу, как можно облегчить себе жизнь и автоматизировать экспорт UI-Kit из Figma напрямую в Xcode и Android Studio.
Читать дальше →
Total votes 14: ↑14 and ↓0 +14
Comments 13

Дизайнеру приложений: как создать и передать в разработку тёмную тему

Reading time 11 min
Views 10K


В конце 2019 года зарелизили iOS 13 и Android 10 с поддержкой автопереключения на тёмную тему. Мы решили добавить её в приложение «Ростелеком Ключ» под iOS и Android, над которым работали в тот момент. В процессе не обошлось без сложностей. Рассказываем о нашем опыте, чтобы вы в аналогичной ситуации сэкономили время и нервы.
Total votes 10: ↑10 and ↓0 +10
Comments 5

Отображение текста в Android

Reading time 17 min
Views 48K

Отображение текстовой информации — наверное, самая базовая и важная часть многих Android-приложений. В данной статье пойдет речь о TextView. Каждый разработчик, начиная с «Hello World», постоянно сталкивается с этим элементом пользовательского интерфейса. Периодически в работе с текстом приходится задумываться о реализации различных дизайнерских решений или улучшении производительности при отрисовке экрана.


Я расскажу об устройстве TextView и некоторых тонкостях работы с ним. Основные советы были взяты из докладов прошедших Google I/O.

Читать дальше →
Total votes 41: ↑41 and ↓0 +41
Comments 8

Android-митап в Redmadrobot 30 апреля

Reading time 1 min
Views 2K
image

Внимание! Мы переносим Android-митап в онлайн. Подключиться к трансляции смогут все желающие, а не только те, кто успел зарегистрироваться. Ссылка на эфир.


Приглашаем Android-разработчиков обсудить, как себя как следует оснастить, чтобы повысить скорость и качество разработки, как (и зачем) применять фреймворк gRPC в мобилке, и разобрать наш «умно-домашний» кейс — как реализовать в приложении открытие кодового замка.
Кто выступает
Total votes 6: ↑5 and ↓1 +4
Comments 0

Темы и стили в Android-приложениях

Reading time 15 min
Views 60K


Каждому Android-разработчику так или иначе приходилось работать со стилями. Кто-то чувствует себя с ними уверенно, у кого-то есть только поверхностные знания, которые зачастую не позволяют самостоятельно решить поставленную задачу.


В преддверии выхода темной темы было решено освежить в памяти всю информацию, касающуюся тем и стилей в Android-приложениях.

Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Comments 10

From zero to “Actions on Google” hero: ваш код

Reading time 8 min
Views 3.4K

image


В первой части мы разобрались с основными принципами проектирования и разработки приложений для Google Assistant. Теперь пришло время написать собственного помощника, чтобы пользователи могли наконец выбрать фильм на вечер. Разработчики shipa_o, raenardev и дизайнер ComradeGuest продолжают рассказывать.

Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Comments 0

From zero to “Actions on Google” hero: начало

Reading time 13 min
Views 6.5K
image

Хакатон Google, и все, что нужно, чтобы начать разрабатывать свои приложения для ассистента.


Google организовал хакатон, посвященный технологии Actions On Google. Это хорошая возможность получить опыт и подумать, как начать делать conversation user interface (CUI) для наших приложений. Поэтому мы собрали команду из двух Android-разработчиков: shipa_o, raenardev и дизайнера comradeguest и отправились участвовать.

Читать дальше →
Total votes 22: ↑22 and ↓0 +22
Comments 6

Обновления Material Design: как жить дальше

Reading time 5 min
Views 67K
Могут ли кнопки быть шестиугольными?
image

Google I/O 2018 оставила огромное количество материала для осмысления. Что нового? Как жить дальше? Устарело ли моё приложение? Могут ли кнопки быть шестиугольными? Дизайнеры снова больше не нужны? Осмысливать приятней не спеша и маленькими порциями. Эта порция — про дизайн.
Читать дальше →
Total votes 41: ↑41 and ↓0 +41
Comments 29

Authenticate me. If you can…

Reading time 14 min
Views 7.1K


I frequently hear questions like "How to implement authentication in an Android app?", "Where to store a PIN?", "Hey man, will I be secure if I implement an authentication feature in such a way?" and a lot of the kind. I got really tired answering these questions so I decided to write all my thoughts about it once to share with all questioners.

Read more →
Total votes 13: ↑10 and ↓3 +7
Comments 0

32 отличия дизайна мобильного приложения под iOS и Android

Reading time 12 min
Views 57K
image

Железный дизайнер из Redmadrobot Design Lab Артур Абраров делится наблюдениями.

Адаптировать дизайн под другую платформу — неотъемлемая часть работы дизайнера мобильных приложений. Цель этой работы — органично вписать дизайн в паттерны взаимодействия пользователя. К тому же, проработанная адаптация упрощает разработку за счёт использования нативных компонентов платформы.

Чтобы адаптировать дизайн правильно, нужно соблюдать гайдлайны платформ: Human Interface Guidelines (HIG) у iOS и Material Design у Android. И общаться с разработчиками, в идеале подключать их к дизайну как можно раньше, чтобы они могли сразу задать технические ограничения.

Но в чём именно отличается дизайн под iOS от дизайна под Android? В этой статье я разберу 32 конкретных отличия дизайна под iOS и Android. Они поделены на четыре группы:

  1. Базовые отличия.
  2. Отличия в навигации и паттернах (UX).
  3. Отличия в компонентах (UI).
  4. Прочие отличия.

Особенности iOS будут слева, а Android — справа или сверху/снизу.

Базовые отличия


Human Interface Guidelines vs Material Design


Почти все отличия этой статьи взяты из анализа этих гайдлайнов. Их суть на идейном уровне следующая. HIG — это про плоский, лёгкий, дружелюбный дизайн, пришёл он из постепенного отказа от скевоморфизма.

Material же имеет несколько основополагающих принципов: материал как метафора; смелый, графический, сознательный; осмысленная анимация; гибкая основа и кроссплатформенность. Если вы не знакомы с гайдлайнами, лучше их прочесть до того, как ознакомитесь со статьёй.

image

image
Total votes 29: ↑29 and ↓0 +29
Comments 14

Весенняя стажировка для мобильных разработчиков в Redmadrobot

Reading time 2 min
Views 5.7K


Привет, Хабр, мы запускаем шестую, на этот раз весеннюю, стажировку для мобильных разработчиков в московском офисе Redmadrobot. Всех, кто пройдёт строгий железный отбор, ждут 7-8 очень насыщенных недель. Ждём ваши заявки до 5 февраля включительно.
Что там будет?
Total votes 10: ↑10 and ↓0 +10
Comments 1

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity