This media is not supported in your browser
VIEW IN TELEGRAM
Набор базовых анимаций на Jetpack Compose
4 стандартные анимации для Compose в одном репозитории:
— счетчик с поворотом
— idle лайк
— индикатор загрузки
— кнопка голосового набора
Сами анимации лежат здесь, а в блоге также есть подробная статья с примерами кода
#android #compose
4 стандартные анимации для Compose в одном репозитории:
— счетчик с поворотом
— idle лайк
— индикатор загрузки
— кнопка голосового набора
Сами анимации лежат здесь, а в блоге также есть подробная статья с примерами кода
#android #compose
Хорошая серия статей по системному дизайну
Практики системного дизайна на мобильных ОС. Всего 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
Статьи неплохо вводят в тему, так что читать стоит в первую очередь тем, кто не до конца ориентируется в системном дизайне, архитектуре, использовании модулей и т.д.
Практики системного дизайна на мобильных ОС. Всего 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
Статьи неплохо вводят в тему, так что читать стоит в первую очередь тем, кто не до конца ориентируется в системном дизайне, архитектуре, использовании модулей и т.д.
Medium
A Simple Framework For Mobile System Design Interviews
The list of posts in this series:
👍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
Koin — очень крутая и набирающая популярность технология для Kotlin Injections, и недавно вышел анонс новой версии 3.2 Beta. Вкратце:
— Режим выпуска обновлений приводится к стандарту 1 раз в полгода (примерно так это делает команда Kotlin)
— Koin получил спонсорскую поддержку от компании Kotzilla, что позволит вложить больше средств в разработку
— Внедрена фича под названием Constructor DSL: она позволяет добавлять компоненты в проект по имени класса, т.е. без использования get()
— Добавлена поддержка Kotlin Native Memory Model
Более подробная информация, а также роадмап на 2022 год — по ссылке
#android
Medium
Koin 3.2 Beta & Roadmap for 2022
We have lots of new things to come and to share with you, about Koin in 2022!
👍6💩1
Настраиваем Android CI через GitHub Actions 🧩
Android Continuous Integration (CI) — система, позволяющая автоматически создавать и тестировать приложение каждый раз, когда отправляется запрос на обновление. Таким образом, экономится время на регулярных билдах и тестах
Настроить CI сейчас можно полностью через сервис GitHub Actions: от создания CI flow до Unit-тестов
Больше информации и подробная инструкция по настройке — по ссылке
#android
Android Continuous Integration (CI) — система, позволяющая автоматически создавать и тестировать приложение каждый раз, когда отправляется запрос на обновление. Таким образом, экономится время на регулярных билдах и тестах
Настроить CI сейчас можно полностью через сервис GitHub Actions: от создания CI flow до Unit-тестов
Больше информации и подробная инструкция по настройке — по ссылке
#android
Medium
Set up an Android CI using GitHub Actions
When I onboarded at Innovorder in September 2021, the Android team had a CI setup running on Google Cloud Build. It worked quite well…
👍4
Большой гайд по стилизации текста на Jetpack Compose 🧩
Стилизация текста, наравне с цветами интерфейса — один из главных способов визуального взаимодействия с пользователем. К примеру, на картинках выше один и тот же текст, однако вариант справа читается гораздо приятнее и лучше удерживает внимание
Выравнивание текста, цвета, вес шрифта, жир/курсив и прочее отлично настраивается на Compose, подробнее — по этой ссылке
Инструкции там довольно элементарные, но иметь такой гайд под рукой никогда не помешает
#android #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
BubbleTabBar — простая и симпатичная нижняя панель, элементы сделаны в виде пузырьков, переключение соответственно реализовано "перетеканием".
Вещь абсолютно универсальная и впишется в большинство приложений любого характера, особенно учитывая широкие возможности кастомизации элемента
Полностью на Kotlin. Ссылка на GitHub: https://github.com/akshay2211/BubbleTabBar
#android #ui
👍5
Внедрение зависимостей через Anvil 🛠
Anvil — плагин для компилятора Kotlin, упрощающий внедрений зависимостей (Dependency Injection). Работает все это помощью Dagger за счет автоматического слияния модулей и компонентов
Вся основная информация на гитхаб странице плагина, ну а в этой статье на медиуме — примеры и неплохой гайд по использованию связки Dagger + Anvil
#android #kotlin
Anvil — плагин для компилятора Kotlin, упрощающий внедрений зависимостей (Dependency Injection). Работает все это помощью Dagger за счет автоматического слияния модулей и компонентов
Вся основная информация на гитхаб странице плагина, ну а в этой статье на медиуме — примеры и неплохой гайд по использованию связки Dagger + Anvil
#android #kotlin
👍3
Реализуем список через карточки на iOS 🧩
Карточки — универсальный элемент интерфейса, через который можно реализовать широкий спектр задач.
К примеру, диалоговые пузырьки во многих мессенджерах — это карточки, равно как и список вакансий, поездов или фильмов в соответствующих приложениях.
В статье предлагается три варианта реализации:
• UITableView (классика)
• UICollectionView + UICollectionViewFlowLayout (для iOS 11+)
• UICollectionView + UICollectionViewCompositionalLayout (для iOS 13+, наиболее оптимальный вариант на мой взгляд)
Сама статья — по ссылке, а также здесь гитхаб с полным кодом описанного проекта.
#ios
Карточки — универсальный элемент интерфейса, через который можно реализовать широкий спектр задач.
К примеру, диалоговые пузырьки во многих мессенджерах — это карточки, равно как и список вакансий, поездов или фильмов в соответствующих приложениях.
В статье предлагается три варианта реализации:
• UITableView (классика)
• UICollectionView + UICollectionViewFlowLayout (для iOS 11+)
• UICollectionView + UICollectionViewCompositionalLayout (для iOS 13+, наиболее оптимальный вариант на мой взгляд)
Сама статья — по ссылке, а также здесь гитхаб с полным кодом описанного проекта.
#ios
👍5
Строим графики на SwiftUI 🧩
SwiftUI Charts — простая утилита для построения графиков на iOS. Стилей много, кастомизация неплохая, реализация полностью на Swift.
Возможных юзкейсов тоже в достатке: от фитнес приложений с контролем веса до кошельков с анализом доходов/расходов.
Материалы:
Сама библиотека на GitHub
Поясняющая статья по работе со SwiftUI Charts
#ios #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
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 месяца назад.
В статье по ссылке ниже рассматриваются 3 основных способа осуществления контроля версий:
— Build Number (классика через X.Y.Z)
— Git Commit Number (привязка к git)
— CI/CD Generated (наиболее сложный и разнообразный вариант)
Материалы:
🔗 Статья на Medium
#ios #android
Medium
How to version your app in a continuous development world
Let’s focus on build version numbers
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Валидатор паролей для Android 🧩
PasswordValidationView — еще одна полезная библиотека, готовая для быстрого встраивания в проект. Элемент пригодится в любых приложениях, использующих учетные записи с логином/паролем.
Валидатор анализирует введенный пароль и сообщает, если он не проходит по требованиям безопасности — например, не хватает цифр или символов верхнего регистра.
Материалы:
🔗 Страница на GitHub
#android #ui
PasswordValidationView — еще одна полезная библиотека, готовая для быстрого встраивания в проект. Элемент пригодится в любых приложениях, использующих учетные записи с логином/паролем.
Валидатор анализирует введенный пароль и сообщает, если он не проходит по требованиям безопасности — например, не хватает цифр или символов верхнего регистра.
Материалы:
🔗 Страница на GitHub
#android #ui
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Создаем моки при помощи SwiftMockGenerator
SwiftMockGeneratorForXcode — расширение для Xcode, которое позволяет создавать моки, пустышки, стабы и шпионов в несколько кликов для проведения юнит-тестирования.
— Моки имитируют исходящее взаимодействие;
— Стабы предоставляют готовые ответы для разных сценариев.
Материалы:
🔗 Страница на GitHub
#ios
SwiftMockGeneratorForXcode — расширение для Xcode, которое позволяет создавать моки, пустышки, стабы и шпионов в несколько кликов для проведения юнит-тестирования.
— Моки имитируют исходящее взаимодействие;
— Стабы предоставляют готовые ответы для разных сценариев.
Материалы:
🔗 Страница на GitHub
#ios
👍3
Нюансы OAuth в мобильных приложениях
На Habr вышел большой лонгрид на тему OAuth в мобильных приложениях под Android. В качестве нюансов реализации автор выделяет:
— Открытие страницы логина: через WebView, внешний браузер или ChromeCustomTabs/SafariVC;
— Обновление токенов: не забыть указать
— Отсутствие браузера: спойлер, он все равно понадобится для использования ССТ;
— Logout: нужно очистить токены, файлы и кэши.
Реализовать OAuth в Android можно с помощью SDK или вручную. Именно второй способ рассматривается в статье. Из плюсом можно отметить то, что мы получаем полный контроль над реализацией (в отличие от SDK). Однако, код придется писать ручками с нуля, не забывая про все описанные выше нюансы.
Материалы:
🔗 Статья на Habr
#android
На Habr вышел большой лонгрид на тему OAuth в мобильных приложениях под Android. В качестве нюансов реализации автор выделяет:
— Открытие страницы логина: через WebView, внешний браузер или ChromeCustomTabs/SafariVC;
— Обновление токенов: не забыть указать
grant_type=refresh_token и refresh_token;— Отсутствие браузера: спойлер, он все равно понадобится для использования ССТ;
— Logout: нужно очистить токены, файлы и кэши.
Реализовать OAuth в Android можно с помощью SDK или вручную. Именно второй способ рассматривается в статье. Из плюсом можно отметить то, что мы получаем полный контроль над реализацией (в отличие от SDK). Однако, код придется писать ручками с нуля, не забывая про все описанные выше нюансы.
Материалы:
🔗 Статья на Habr
#android
Хабр
OAuth в мобильных приложениях
Привет! Меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS . Ни один сервис не обходится без логина. Часто в мобильных приложениях требуется интегрировать вход через сторонние соцсети —...
This media is not supported in your browser
VIEW IN TELEGRAM
Рисуем на холсте в Android-приложении
Sketchbook — это библиотека Jetpack Compose для рисования контуров и изображений на холсте. Предоставляет необходимый функционал для взаимодействия с холстом: выбор цвета, палитру и дополнительные фичи.
Материалы:
👉 Проект на GitHub
👉 Демо-версия по работе с изображениями
#android #ui
Sketchbook — это библиотека Jetpack Compose для рисования контуров и изображений на холсте. Предоставляет необходимый функционал для взаимодействия с холстом: выбор цвета, палитру и дополнительные фичи.
Материалы:
👉 Проект на GitHub
👉 Демо-версия по работе с изображениями
#android #ui
Регулярные выражения в Kotlin
Regexp нужны для облегчения работы со строками. С их помощью можно не только проверять, но и производить различные манипуляции более простым способом. Предлагаю вам ознакомиться со статьей, которая представляет из себя подробный гайд по работе с regexp.
Вы узнаете:
→ Как создать объект Regex
→ Методы регулярных выражений
→ Как предопределять классы и группы
→ Про логические операторы
Материалы:
🔗 Статья про регулярные выражения в Kotlin
#android #kotlin
Regexp нужны для облегчения работы со строками. С их помощью можно не только проверять, но и производить различные манипуляции более простым способом. Предлагаю вам ознакомиться со статьей, которая представляет из себя подробный гайд по работе с regexp.
Вы узнаете:
→ Как создать объект Regex
→ Методы регулярных выражений
→ Как предопределять классы и группы
→ Про логические операторы
Материалы:
🔗 Статья про регулярные выражения в Kotlin
#android #kotlin
kodeco.com
Regular Expressions in Kotlin
Learn how to improve your strings manipulation with the power of regular expressions in Kotlin. You’ll love them!
👍1