Пишем UI для чата на Flutter
Чтобы реализовать подобный интерфейс для чата, необходимо учесть несколько моментов:
1. Все текстовые сообщения расположены в виджетах-прямоугольниках со скругленными углами и отдельными цветами.
2. Сообщения от разных собеседников должны быть выровнены по разным краям экрана.
3. Текст должен переноситься на другую строку, если не помещается в текущей.
Статья объясняет, как реализовать интерфейс чата с нашими условиями на Flutter: https://tprg.ru/SUzC
#flutter #ui
Чтобы реализовать подобный интерфейс для чата, необходимо учесть несколько моментов:
1. Все текстовые сообщения расположены в виджетах-прямоугольниках со скругленными углами и отдельными цветами.
2. Сообщения от разных собеседников должны быть выровнены по разным краям экрана.
3. Текст должен переноситься на другую строку, если не помещается в текущей.
Статья объясняет, как реализовать интерфейс чата с нашими условиями на Flutter: https://tprg.ru/SUzC
#flutter #ui
Темы и стили в Jetpack Compose
В ролике разобрана работа с темами приложения, в частности:
— тема Material;
— настройка, цветов, шрифтов и других элементов;
— создание кастомного стиля;
— использование Composable Preview:
https://youtu.be/SR2AAKRDmQw
#android #compose
В ролике разобрана работа с темами приложения, в частности:
— тема Material;
— настройка, цветов, шрифтов и других элементов;
— создание кастомного стиля;
— использование Composable Preview:
https://youtu.be/SR2AAKRDmQw
#android #compose
YouTube
Jetpack Compose. Основы. Темы и стили [Ru, Kotlin\Android]
Всем привет ) Продолжаем нашу серию, посвященную разбору Jetpack Compose. И сегодня будет видео, в котором мы разберем работу с темами в приложении. Как создать новую тему, как работать с Material темой, как настроить цвета, шрифты и другие элементы
Если…
Если…
Доклады с iOS-митапа CocoaHeads
В конце сентября прошёл митап для iOS-разработчиков. Делимся записями выступлений:
1. «Борьба с зависимостями» Лены Гордиенко
Спикер сравнила менеджеры зависимостей и рассказала про особенности переезда на SPM.
2. «Поднимаем облачный CI на М1 за сутки» Виталия Волкова
Из доклада вы узнаете, как создать CI для iOS-разработки на базе облачного Mac Mini на М1.
3. «За пределами триала» Никиты Майданова
В докладе разобраны нюансы работы с in-App подписками на iOS.
#ios #доклады
В конце сентября прошёл митап для iOS-разработчиков. Делимся записями выступлений:
1. «Борьба с зависимостями» Лены Гордиенко
Спикер сравнила менеджеры зависимостей и рассказала про особенности переезда на SPM.
2. «Поднимаем облачный CI на М1 за сутки» Виталия Волкова
Из доклада вы узнаете, как создать CI для iOS-разработки на базе облачного Mac Mini на М1.
3. «За пределами триала» Никиты Майданова
В докладе разобраны нюансы работы с in-App подписками на iOS.
#ios #доклады
YouTube
CocoaHeads iOS Митап: Сентябрь 2021
Добро пожаловать на митап сообщества iOS-разработчиков CocoaHeads!
В программе:
0:00 – Начало
6:10 – Лена Гордиенко (inDriver) – Борьба с зависимостями
39:00 – Виталик Волков (Welps) – Облачный CI на M1
1:11:15 – Никита Майданов (CocoaHeads) – За пределами…
В программе:
0:00 – Начало
6:10 – Лена Гордиенко (inDriver) – Борьба с зависимостями
39:00 – Виталик Волков (Welps) – Облачный CI на M1
1:11:15 – Никита Майданов (CocoaHeads) – За пределами…
Создание CustomView на Android
Записывали ли вы аудиосообщение в мессенджере? В некоторых анимация кнопки записи зависит от громкости звука из микрофона.
Как сделать подобную анимацию с помощью MediaRecorder и view.animate, объяснил разработчик из «Одноклассников»:
https://youtu.be/c5iClfCaPrw
#android
Записывали ли вы аудиосообщение в мессенджере? В некоторых анимация кнопки записи зависит от громкости звука из микрофона.
Как сделать подобную анимацию с помощью MediaRecorder и view.animate, объяснил разработчик из «Одноклассников»:
https://youtu.be/c5iClfCaPrw
#android
YouTube
Запись звука и отображение громкости на Android / Юрий Дорофеев
Юрий Дорофеев, Android-разработчик и преподаватель проектов VK, расскажет, как можно сделать анимацию громкости записи микрофона. Будет использовать MediaRecorder и view.animate.
VK Team — это миллион возможностей проявить себя. Мы делаем современные и быстрые…
VK Team — это миллион возможностей проявить себя. Мы делаем современные и быстрые…
Финтех-компании ищут опытных мобильных разработчиков
— iOS-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик (Middle) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик в Revolut
Где: Удалённо
Стек: Swift, iOS
— Android-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android-разработчик в Revolut
Где: Удалённо
Стек: Kotlin, Dagger 2, RxJava 2, Room
#вакансии #работа
— iOS-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик (Middle) в FBS
Где: Санкт-Петербург
Стек: Swift, UIKit, RxSwift, MVVM, iOS
— iOS-разработчик в Revolut
Где: Удалённо
Стек: Swift, iOS
— Android-разработчик (Senior) в FBS
Где: Санкт-Петербург
Стек: Kotlin, Coroutines, gRPC, OpenGL, MVVM Android Data Binding, Android Architecture Components, Flux/Redux
— Android-разработчик в Revolut
Где: Удалённо
Стек: Kotlin, Dagger 2, RxJava 2, Room
#вакансии #работа
Архитектура MVI в Kotlin Multiplatform
MVI состоит из двух основных компонентов: Model (слой логики и данных) и View (слой UI). Model хранит состояние state и передаёт его View, в View в свою очередь отвечает за выдачу намерений (intents).
Благодаря разделению бизнес-логики и интерфейса архитектура MVI хорошо подходит для использования в KMM-проекте. А разобраться в реализации MVI поможет цикл из трёх статей:
1. Краткое описание шаблона MVI, постановка задачи и создание общего модуля с использованием Kotlin Multiplatform.
2. Интеграция общего модуля в iOS- и Android-приложения.
3. Модульное и интеграционное тестирование.
#android #ios #kmm #архитектура
MVI состоит из двух основных компонентов: Model (слой логики и данных) и View (слой UI). Model хранит состояние state и передаёт его View, в View в свою очередь отвечает за выдачу намерений (intents).
Благодаря разделению бизнес-логики и интерфейса архитектура MVI хорошо подходит для использования в KMM-проекте. А разобраться в реализации MVI поможет цикл из трёх статей:
1. Краткое описание шаблона MVI, постановка задачи и создание общего модуля с использованием Kotlin Multiplatform.
2. Интеграция общего модуля в iOS- и Android-приложения.
3. Модульное и интеграционное тестирование.
#android #ios #kmm #архитектура
Приводим к единому стилю дизайн всего приложения
При обновлении приложения может появиться несогласованность дизайна различных элементов. Она может возникнуть из-за двух основных причин:
— дублирование кода;
— отсутствие единого списка элементов, используемых в приложении.
Ребята из SuperJob нашли решение в виде единой дизайн-системы, состоящей из набора компонентов и их состояний.
Подробнее о создании дизайн-системы разработчики рассказали в статье: https://tprg.ru/AhrP
#android #ui
При обновлении приложения может появиться несогласованность дизайна различных элементов. Она может возникнуть из-за двух основных причин:
— дублирование кода;
— отсутствие единого списка элементов, используемых в приложении.
Ребята из SuperJob нашли решение в виде единой дизайн-системы, состоящей из набора компонентов и их состояний.
Подробнее о создании дизайн-системы разработчики рассказали в статье: https://tprg.ru/AhrP
#android #ui
Android 12 вышла из беты
Google выложила финальный исходный код Android 12 в Android Open Source Project (AOSP) и официально объявила о релизе новой версии.
Первыми Android 12 получат устройства Pixel (в течение нескольких недель). До конца года новая версия также станет доступна на некоторых моделях Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo и Xiaomi.
Если вы вдруг пропустили всю информацию про Android 12, то в статье собраны все ключевые особенности новой системы.
#android
Google выложила финальный исходный код Android 12 в Android Open Source Project (AOSP) и официально объявила о релизе новой версии.
Первыми Android 12 получат устройства Pixel (в течение нескольких недель). До конца года новая версия также станет доступна на некоторых моделях Samsung Galaxy, OnePlus, Oppo, Realme, Tecno, Vivo и Xiaomi.
Если вы вдруг пропустили всю информацию про Android 12, то в статье собраны все ключевые особенности новой системы.
#android
Создание AR-приложения для iOS с помощью RealityKit
Фреймворк RealityKit представлен в 2020 году и позволяет разместить виртуальные объекты в дополненной реальности.
Разобраться с основами и создать своё первое AR-приложение поможет статья, где показано, как реализовать игральный кубик в AR:
https://tprg.ru/Bcb7
#ios
Фреймворк RealityKit представлен в 2020 году и позволяет разместить виртуальные объекты в дополненной реальности.
Разобраться с основами и создать своё первое AR-приложение поможет статья, где показано, как реализовать игральный кубик в AR:
https://tprg.ru/Bcb7
#ios
Добавляем эффект конфетти в Android-приложение
Достаточно воспользоваться легковесной библиотекой Konfetti, которая симулирует систему частиц. Выглядит эффектно, использовать просто:
https://github.com/DanielMartinus/Konfetti
А если ищете подобное на iOS, то существует проект ConfettiSwiftUI.
#android #библиотеки #ui
Достаточно воспользоваться легковесной библиотекой Konfetti, которая симулирует систему частиц. Выглядит эффектно, использовать просто:
https://github.com/DanielMartinus/Konfetti
А если ищете подобное на iOS, то существует проект ConfettiSwiftUI.
#android #библиотеки #ui
Анимации списка на Compose
Серия статей познакомит вас с реализацией различных типов анимаций на Jetpack Compose:
1. Добавление элементов в список.
2. Удаление элемента из списка.
3. Перемещение элементов в списке.
Вы научитесь не только рисовать элементы для анимации, но и считывать пользовательские жесты.
#android #compose
Серия статей познакомит вас с реализацией различных типов анимаций на Jetpack Compose:
1. Добавление элементов в список.
2. Удаление элемента из списка.
3. Перемещение элементов в списке.
Вы научитесь не только рисовать элементы для анимации, но и считывать пользовательские жесты.
#android #compose
Стек iOS-разработчика в 2021 году
Опытный iOS-разработчик поделился, какую архитектуру, инструменты и стандарты кода он использует в коммерческой разработке:
https://tprg.ru/PXaj
Пригодится начинающим iOS-разработчикам для лучшего понимания, на какие инструменты стоит обратить внимание.
#ios #начинающим
Опытный iOS-разработчик поделился, какую архитектуру, инструменты и стандарты кода он использует в коммерческой разработке:
https://tprg.ru/PXaj
Пригодится начинающим iOS-разработчикам для лучшего понимания, на какие инструменты стоит обратить внимание.
#ios #начинающим
Предустановленные российские сервисы на смартфонах не пользуются популярностью
Исследователи из Telecom Daily проанализировали, насколько эффективными оказались меры по предустановке российских приложений на Android и iOS.
В iOS при активации смартфона появляется «окно выбора», где пользователь может скачать предложенные российские сервисы. При этом:
— 79% опрошенных пользователей при первом включении настраивают только базовые функции;
— 45% не заметили окно вовсе;
— 16% готовы установить приложение из предложенного списка.
А как ситуация с Android? Samsung реализовала на главном меню папку «Закон» с ярлыками российских приложений. Однако 64% опрошенных пользователей Samsung не знали о её наличии. В то же время 46% всех респондентов такой формат признали наиболее предпочтительным вариантом предустановки.
В итоге общий эффект от принятых мер на iOS составил около 1%, что близко к нулю. На Android оценить эффект сложно из-за множества подходов для соблюдения закона.
#android #ios
Исследователи из Telecom Daily проанализировали, насколько эффективными оказались меры по предустановке российских приложений на Android и iOS.
В iOS при активации смартфона появляется «окно выбора», где пользователь может скачать предложенные российские сервисы. При этом:
— 79% опрошенных пользователей при первом включении настраивают только базовые функции;
— 45% не заметили окно вовсе;
— 16% готовы установить приложение из предложенного списка.
А как ситуация с Android? Samsung реализовала на главном меню папку «Закон» с ярлыками российских приложений. Однако 64% опрошенных пользователей Samsung не знали о её наличии. В то же время 46% всех респондентов такой формат признали наиболее предпочтительным вариантом предустановки.
В итоге общий эффект от принятых мер на iOS составил около 1%, что близко к нулю. На Android оценить эффект сложно из-за множества подходов для соблюдения закона.
#android #ios
В App Store не будут пускать приложения без функции удаления учётной записи
Правило вступит в силу 31 января 2022 года и касается всех iOS-приложений, где предлагается создание аккаунта.
Требования является частью курса по контролю пользователями своих личных данных. Подробнее об использовании личных данных можно прочитать в обновлённых руководствах App Store Review.
#ios
Правило вступит в силу 31 января 2022 года и касается всех iOS-приложений, где предлагается создание аккаунта.
Требования является частью курса по контролю пользователями своих личных данных. Подробнее об использовании личных данных можно прочитать в обновлённых руководствах App Store Review.
#ios
Что почитать: Jetpack Compose Internals
Если вместо разрозненной документации вы предпочитаете книги, где вся информация собрана в одном месте, то советуем обратить внимание на книгу Jetpack Compose Internals.
В книге исследуются возможности Jetpack Compose — UI-фреймворка будущего Android-разработки. Также в ней рассмотрены различные кейсы использования Compose за пределами экосистемы Android.
И самое главное — книгу можно забрать бесплатно на официальном сайте.
#compose #android
Если вместо разрозненной документации вы предпочитаете книги, где вся информация собрана в одном месте, то советуем обратить внимание на книгу Jetpack Compose Internals.
В книге исследуются возможности Jetpack Compose — UI-фреймворка будущего Android-разработки. Также в ней рассмотрены различные кейсы использования Compose за пределами экосистемы Android.
И самое главное — книгу можно забрать бесплатно на официальном сайте.
#compose #android
Функции области видимости (Scope Function) в Kotlin
Функции
Статья поможет разобраться, за что отвечает каждая функция и когда их стоит применять: https://tprg.ru/Z6JD
#kotlin #начинающим
Функции
let, run, with, apply и also используются для выполнения блока кода для конкретного объекта. Их и называют функциями области видимости (Scope Function).Статья поможет разобраться, за что отвечает каждая функция и когда их стоит применять: https://tprg.ru/Z6JD
#kotlin #начинающим
Алгоритмы для мобильных разработчиков — почему о них всё ещё спрашивают на собеседованиях
На реальных проектах часто используют готовые библиотеки и фреймворки для внедрения алгоритмов — в основном, для проверенного кода и ускоренной разработки. Тогда почему джунов всё ещё могут о них спросить на собеседовании?
Сотрудник из «Яндекса» объяснил, почему знать алгоритмы важно для мобильного разработчика:
https://tprg.ru/2y1X
#android #ios #начинающим
На реальных проектах часто используют готовые библиотеки и фреймворки для внедрения алгоритмов — в основном, для проверенного кода и ускоренной разработки. Тогда почему джунов всё ещё могут о них спросить на собеседовании?
Сотрудник из «Яндекса» объяснил, почему знать алгоритмы важно для мобильного разработчика:
https://tprg.ru/2y1X
#android #ios #начинающим
Что почитать: Flutter Apprentice
На днях команда Flutter объявила о раздаче книги Flutter Apprentice. Книга рассказывает обо всех аспектах разработки на Flutter, которые помогут создать своё кроссплатформенное приложение.
Раздаётся второе издание книги, содержание которой соответствует Flutter 2.5, так что волноваться об устаревшем материале не стоит.
Электронную книгу можно забрать до 6 января 2022 года: https://tprg.ru/wziT
#flutter
На днях команда Flutter объявила о раздаче книги Flutter Apprentice. Книга рассказывает обо всех аспектах разработки на Flutter, которые помогут создать своё кроссплатформенное приложение.
Раздаётся второе издание книги, содержание которой соответствует Flutter 2.5, так что волноваться об устаревшем материале не стоит.
Электронную книгу можно забрать до 6 января 2022 года: https://tprg.ru/wziT
#flutter
👍1
Все шаблоны проектирования на Java
Шаблоны проектирования — это способ решить популярную задачу оптимальным способом, а также повысить читабельность кода для коллег.
В этом репозитории собраны реализации всех известных шаблонов на языке Java:
https://github.com/iluwatar/java-design-patterns
#java #начинающим
Шаблоны проектирования — это способ решить популярную задачу оптимальным способом, а также повысить читабельность кода для коллег.
В этом репозитории собраны реализации всех известных шаблонов на языке Java:
https://github.com/iluwatar/java-design-patterns
#java #начинающим
Далеко не всем по душе UI-фреймворк Jetpack Compose. Давайте обсудим, что конкретно вам не нравится в нём или почему нативная разработка (или даже Flutter) лучше.
#чат
#чат
Приложение для официантов на KMM и Flutter: особенности нестандартного стека
Перед разработчиками из r_keeper стояла непростая задача — переписать порядком устаревшее приложение для обработки заказов в ресторанах.
Поскольку требовалось создать приложение для iOS и Android, команда стала смотреть в сторону кроссплатформы и выбрала необычный стек на Kotlin Multiplatform и Flutter. В статье они объяснили свой выбор: https://tprg.ru/YP58
Решение дошло до стадии продакшна, однако в процессе ребята столкнулись со множеством трудностей. Подробнее о проблемах рассказано в статье: https://tprg.ru/JxEK
#flutter #kmm
Перед разработчиками из r_keeper стояла непростая задача — переписать порядком устаревшее приложение для обработки заказов в ресторанах.
Поскольку требовалось создать приложение для iOS и Android, команда стала смотреть в сторону кроссплатформы и выбрала необычный стек на Kotlin Multiplatform и Flutter. В статье они объяснили свой выбор: https://tprg.ru/YP58
Решение дошло до стадии продакшна, однако в процессе ребята столкнулись со множеством трудностей. Подробнее о проблемах рассказано в статье: https://tprg.ru/JxEK
#flutter #kmm