Записки разработчицы
1.88K subscribers
378 photos
24 videos
4 files
1.09K links
Разговоры об IT, о разработке. О мобилках нативных и кроссплатформенных.
Личный аккаунт @azharkova
Download Telegram
Встроенный chat app - это то, что будут просить ваши заказчики практически в любом приложении
Sber объявляет очень интересный конкурс для разработчиков:
https://sberdevices.ru/devaward/
Инструментарий для работы доступен по ссылке:
https://smartapp-studio.sberdevices.ru/login
Что-то интересное задумали показать в SkillBox)
Forwarded from Android Broadcast
#Online #Бесплатно #Реклама

Познакомься с разработкой приложений на Android на бесплатном онлайн-интенсиве Skillbox

Ты познакомишься со средой разработки для Android. Научишься создавать многоэкранные приложения и бесконечную новостную ленту, а также публиковать работы в Google Play.

Спикер — Lead Android Developer в Sonect Дмитрий Рязанцев. Он работал над созданием Yandex Browser под Android. Вместе с ним ты разработаешь своё первое приложение, даже если до этого не программировал.

Авторы трёх лучших работ получат гранты на обучение в Skillbox, которые можно будет потратить на любой курс в онлайн-университете. 

Присоединяйся к трансляциям 10–12 декабря в 19:00 по московскому времени!
Необычная идея первого приложения. Хочется узнать, какой стек они выбрали для реализации
А вы уже пробовали Firebase ML в своих проектах
Anonymous Poll
0%
Да
53%
Нет, но стало интересно
47%
Нет, и не собираюсь
В этом году я плотно занималась не только SwiftUI, но и #kotlinmultiplatform. Наконец, у меня дошли руки доработать статью по созданию многопоточного приложения KMM, включив материал митапа MobiFest от 7.10
Если вам интересно не только, как реализовать многопоточное приложение для обеих платформ, но и почему общая работа с потоками организуется именно так, то welcome:
https://habr.com/ru/post/533864/
https://habr.com/ru/post/533952/
Если вкратце, то я показываю 2 способа, как можно организовать работу с потоками с учетом особенностей KMM и платформ:
1. Мы используем в общей логике библиотеки, которые внутри реализуют свою многопоточность. Вызываем их напрямую с наших платформенных проектов. Тут все ок. На iOS suspended красиво раскладываются на функции типа с completion handled: (Результат, Error) -> Void
На Android вызываем внутри mainScope

2. Делаем общую и архитектуру. Вызов библиотек перекладываем на посредника. Делаем ему его собственный scope на основе контекста корутины.
А для этого нам нужно задать свои диспетчеры корутин. И если под Android они уже есть (ибо Kotlin/JVM), то под Kotlin/Native их надо делать свои. + мы не можем использовать на iOS очередь из global queue, т.к они под Kotlin/Native ни к чему не привязаны.
В итоге мы делаем диспетчер на main queue. И если мы хотим использовать маршрутизацию в фон, то делаем свой фоновый scope. Не факт, что мы будем использовать только либы со своей многопоточностью же.

Также нам надо предусмотреть корректность передачи нашего диспетчера между потоками
В этот раз мои статьи попали в рубрику "Android".
Вообще в дайджест на этой неделе попало много интересных статей:
1. Apple дополнили свой сайт интересными туториалами и кодлабами по SwiftUI. То, что нужно, чтобы больше узнать про декларативную верстку
3. Статья, как сочетать работу с Coroutines и запросом пермишенов в Android приложении:
https://medium.com/better-programming/when-coroutines-meet-android-permissions-a1f048e70f74

4. Для любителей чего-нибудь эдакого статья по работе с GraphQL в Kotlin приложении . Для тех, кто делает все сам:
https://medium.com/swlh/graphql-kotlin-tutorial-344f5fe0c71a