mobDev()
157 subscribers
62 photos
5 videos
98 links
🔥 Твой фид мобильной разработки
➡️ Новости, статьи, видео, квизы
👨‍💻 #android #ios #crossplatform
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Наглядная визуализация данных. AsyncTask -> Loader -> LiveData -> StateFlow

#android
😁8
В интернет слили скриншоты распределения ресурсов на твоем компьютере 🙈
😁10🤯1
Хорошая серия статей по системному дизайну

Практики системного дизайна на мобильных ОС. Всего 5 частей, 2 теории и 3 практических задачи с разбором:

👉 A Simple Framework For Mobile System Design Interviews
👉 Additional Topics For Mobile System Design Interviews
👉 Mobile System Design Exercise: File Downloader Library
👉 Mobile System Design Exercise: Caching Library
👉 Mobile System Design Exercise: Image Library

Статьи неплохо вводят в тему, так что читать стоит в первую очередь тем, кто не до конца ориентируется в системном дизайне, архитектуре, использовании модулей и т.д.
👍4
Koin 3.2 Beta + Roadmap на 2022 🗺

Koin — очень крутая и набирающая популярность технология для Kotlin Injections, и недавно вышел анонс новой версии 3.2 Beta. Вкратце:

— Режим выпуска обновлений приводится к стандарту 1 раз в полгода (примерно так это делает команда Kotlin)

— Koin получил спонсорскую поддержку от компании Kotzilla, что позволит вложить больше средств в разработку

— Внедрена фича под названием Constructor DSL: она позволяет добавлять компоненты в проект по имени класса, т.е. без использования get()

— Добавлена поддержка Kotlin Native Memory Model

Более подробная информация, а также роадмап на 2022 год — по ссылке

#android
👍6💩1
Настраиваем Android CI через GitHub Actions 🧩

Android Continuous Integration (CI) — система, позволяющая автоматически создавать и тестировать приложение каждый раз, когда отправляется запрос на обновление. Таким образом, экономится время на регулярных билдах и тестах

Настроить CI сейчас можно полностью через сервис GitHub Actions: от создания CI flow до Unit-тестов

Больше информации и подробная инструкция по настройке — по ссылке

#android
👍4
Большой гайд по стилизации текста на Jetpack Compose 🧩

Стилизация текста, наравне с цветами интерфейса — один из главных способов визуального взаимодействия с пользователем. К примеру, на картинках выше один и тот же текст, однако вариант справа читается гораздо приятнее и лучше удерживает внимание

Выравнивание текста, цвета, вес шрифта, жир/курсив и прочее отлично настраивается на Compose, подробнее — по этой ссылке

Инструкции там довольно элементарные, но иметь такой гайд под рукой никогда не помешает

#android #compose
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Анимированный Bottom Bar для Android-приложений 🧩

BubbleTabBar — простая и симпатичная нижняя панель, элементы сделаны в виде пузырьков, переключение соответственно реализовано "перетеканием".

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

Полностью на Kotlin. Ссылка на GitHub: https://github.com/akshay2211/BubbleTabBar

#android #ui
👍5
Внедрение зависимостей через Anvil 🛠

Anvil — плагин для компилятора Kotlin, упрощающий внедрений зависимостей (Dependency Injection). Работает все это помощью Dagger за счет автоматического слияния модулей и компонентов

Вся основная информация на гитхаб странице плагина, ну а в этой статье на медиуме — примеры и неплохой гайд по использованию связки Dagger + Anvil

#android #kotlin
👍3
Реализуем список через карточки на iOS 🧩

Карточки — универсальный элемент интерфейса, через который можно реализовать широкий спектр задач.

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

В статье предлагается три варианта реализации:

• UITableView (классика)

• UICollectionView + UICollectionViewFlowLayout (для iOS 11+)

• UICollectionView + UICollectionViewCompositionalLayout (для iOS 13+, наиболее оптимальный вариант на мой взгляд)

Сама статья — по ссылке, а также здесь гитхаб с полным кодом описанного проекта.

#ios
👍5
Когда начал пользоваться библиотекой, не прочитав документацию 📃
😁9
Строим графики на SwiftUI 🧩

SwiftUI Charts — простая утилита для построения графиков на iOS. Стилей много, кастомизация неплохая, реализация полностью на Swift.

Возможных юзкейсов тоже в достатке: от фитнес приложений с контролем веса до кошельков с анализом доходов/расходов.

Материалы:
Сама библиотека на GitHub
Поясняющая статья по работе со SwiftUI Charts

#ios #swiftui
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Улучшенный компонент смахивания для Compose 🧩

Swipe To Action — классический элемент мобильного UX, позволяющий не вызывать громоздкое меню для быстрых действий, а осуществлять их свайпом

В Compose уже давно есть встроенный SwipeToDismiss — он работает аналогичным образом, однако исполнение свайп-действия удаляет элемент, что не всегда удобно

Поэтому если нужно выполнить действие и оставить элемент на экране, можно использовать кастомный компонент Swipe

Материалы:
Страница Swipe на GitHub

#android #compose
Осуществляем Version Control правильно 🧩

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

В статье по ссылке ниже рассматриваются 3 основных способа осуществления контроля версий:

— Build Number (классика через X.Y.Z)
— Git Commit Number (привязка к git)
— CI/CD Generated (наиболее сложный и разнообразный вариант)

Материалы:
🔗 Статья на Medium

#ios #android
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Валидатор паролей для Android 🧩

PasswordValidationView — еще одна полезная библиотека, готовая для быстрого встраивания в проект. Элемент пригодится в любых приложениях, использующих учетные записи с логином/паролем.

Валидатор анализирует введенный пароль и сообщает, если он не проходит по требованиям безопасности — например, не хватает цифр или символов верхнего регистра.

Материалы:
🔗 Страница на GitHub

#android #ui
👍2
🥲🥲🥲
😢10
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем моки при помощи SwiftMockGenerator

SwiftMockGeneratorForXcode — расширение для Xcode, которое позволяет создавать моки, пустышки, стабы и шпионов в несколько кликов для проведения юнит-тестирования.

Моки имитируют исходящее взаимодействие;
Стабы предоставляют готовые ответы для разных сценариев.

Материалы:
🔗 Страница на GitHub

#ios
👍3
Нюансы OAuth в мобильных приложениях

На Habr вышел большой лонгрид на тему OAuth в мобильных приложениях под Android. В качестве нюансов реализации автор выделяет:

— Открытие страницы логина: через WebView, внешний браузер или ChromeCustomTabs/SafariVC;

— Обновление токенов: не забыть указать grant_type=refresh_token и refresh_token;

— Отсутствие браузера: спойлер, он все равно понадобится для использования ССТ;

— Logout: нужно очистить токены, файлы и кэши.

Реализовать OAuth в Android можно с помощью SDK или вручную. Именно второй способ рассматривается в статье. Из плюсом можно отметить то, что мы получаем полный контроль над реализацией (в отличие от SDK). Однако, код придется писать ручками с нуля, не забывая про все описанные выше нюансы.

Материалы:
🔗 Статья на Habr

#android
This media is not supported in your browser
VIEW IN TELEGRAM
Рисуем на холсте в Android-приложении

Sketchbook — это библиотека Jetpack Compose для рисования контуров и изображений на холсте. Предоставляет необходимый функционал для взаимодействия с холстом: выбор цвета, палитру и дополнительные фичи.

Материалы:
👉 Проект на GitHub
👉 Демо-версия по работе с изображениями

#android #ui
Регулярные выражения в Kotlin

Regexp нужны для облегчения работы со строками. С их помощью можно не только проверять, но и производить различные манипуляции более простым способом. Предлагаю вам ознакомиться со статьей, которая представляет из себя подробный гайд по работе с regexp.

Вы узнаете:
→ Как создать объект Regex
→ Методы регулярных выражений
→ Как предопределять классы и группы
→ Про логические операторы

Материалы:
🔗 Статья про регулярные выражения в Kotlin

#android #kotlin
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Когда начал собираться домой в пятницу вечером…
🔥6😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Инструмент для создания анимаций на Flutter

Rive, ранее известный, как 2Dimensions — инструмент, который позволяет создавать красочных персонажей или интерфейсы. Также с его помощью удобно добавлять загрузочные файлы в приложения.

Материалы:
Официальный сайт Rive

#flutter