Мобильная разработка #1
Open in Telegram
Всё о создании приложений под Android и iOS в одном месте. 🔹 Инструменты, библиотеки и ресурсы для ускорения работы. 🔹 Статьи и гайды для разработчиков любого уровня. 🔹 Тренды мобильной разработки и новости индустрии. Реклама @evgenycarter
Show more3 841
Subscribers
-124 hours
-127 days
-1330 days
Posts Archive
Авторизация OAuth 2.0 в Google Api для Android без специальных библиотек
На тему OAuth 2.0 написано море хороших статей (например: 1,2), переписывать их не буду, а лучше расскажу про изобретение велосипеда то, как я пытался на практике реализовать авторизацию в Google Api посредством простых запросов.
Про существование библиотек Sign-In, AppAuth, AccountManager я в курсе, но чего они все не дают, так это четкого понимания как происходит обмен ключами и что они из себя представляют. Было принято решение получить токены от Google Books без применения специализированных библиотек для того,чтобы разобраться как все устроено, возможно кому-то пригодится. Сразу скажу, что не являюсь экспертом, и крутым разработчикам будет не интересно изобретение велосипедов,но возможно кому-то из начинающих разработчиков пригодится данная информация.
https://habr.com/ru/articles/735982/
#Android
👉 @developer_mobila
Новое в умном доме с Алисой
Создавайте удобные сценарии с новыми Zigbee-устройствами Яндекса
Узнать больше
#реклама
yandex.ru
О рекламодателе
Attempting to connect a tvOS app to an iOS app with DeviceDiscoveryUI
https://bendodson.com/weblog/2023/05/10/connecting-a-tvos-app-to-ios-ipados-and-watchos-with-devicediscoveryui/
#ios
👉 @developer_mobila
Пройдите курс по SQL в Нетологии за 0₽
Специалисты, которые умеют работать с SQL, высоко ценятся на рынке труда.
Они работают в крупных компаниях и на фрилансе, получают зарплату выше рынка и быстро растут в профессии.
На бесплатном курсе-симуляторе вы изучите теорию работы с базами данных и узнаете, какие рабочие задачи поможет решать SQL. Но главное - научитесь создавать запросы и решите реальную задачу — соберёте данные о покупателях интернет-магазина в удобную базу данных, настроите быстрый поиск информации и сформируете отчёт.
А по промокоду TG5 получите специальную скидку 5% на курсы дополнительного профессионального образования.
Зарегистрироваться
#реклама 16+
netology.ru
О рекламодателе
В каких случаях использовать функцию derivedStateOf из Jetpack Compose
derivedStateOf - это функция, которая из исходных объектов State формирует производный State. Основной смысл применения функции derivedStateOf - понизить частоту изменения исходного State, тем самым избавиться от ненужных рекомпозиций.
Лямбда-выражение, которое передается в derivedStateOf, выполняется каждый раз, когда изменяется любой из входных объектов State, и результат используется для обновления значения производного State. Важно понимать, что лямбда-выражение будет вызываться повторно только если изменится свойство value объекта State и чтение этого свойства происходит в этой лямбде. Изменение захваченных переменных другого типа не приведет к повторному вызову лямбда-выражения.
https://habr.com/ru/articles/735526/
#Android
👉 @developer_mobila
Многомодульное iOS-приложение: подходы к организации межмодульного взаимодействия
В этой статье остановлюсь на вопросах оптимизации сборки проекта и выборе вариантов линковки артефактов компиляции.
https://habr.com/ru/companies/docdoc/articles/735946/
#ios
👉 @developer_mobila
Как зарабатывать деньги, не приходя на работу?
Таким вопросом задаются почти все люди с утра.
До момента, пока не заведут себе одну из карт Альфа-Банка и не захотят поделиться радостью с друзьями, близкими или даже соседями.
Перейти на сайт
#реклама
alfabank.ru
О рекламодателе
Как создать анимированные шейдеры в Jetpack Compose
Jetpack Compose — молодой, но бурно развивающийся фреймворк для разработки под Android, который обладает множеством не всегда очевидных фичей. Сегодня я хотел бы описать одну из таких встроенных возможностей: речь идет об использовании OpenGL-шейдеров. Они позволяют делать красивые анимированные интерфейсы, как на картинке ниже.
https://habr.com/ru/companies/timeweb/articles/736192/
#Android
👉 @developer_mobila
Курс «DevOps для эксплуатации и разработки» от Яндекса
За 6 месяцев обучения освоите принципы DevOps и автоматизацию процесса разработки.
Зарегистрироваться
#реклама 16+
practicum.yandex.ru
О рекламодателе
Поток данных SwiftUI с примерами
SwiftUI предлагает декларативный подход к проектированию пользовательского интерфейса и автоматически обновляет затронутые части интерфейса при изменении данных. Такой подход часто называют однонаправленным потоком данных, и он коренным образом изменил способ разработки приложений в экосистеме Apple.
https://daddycoding.com/2023/05/12/swiftui-data-flow-explained/
#ios
👉 @developer_mobila
Безопасная локализация строк в iOS: Localinter
Привет! Меня зовут Сергей Балалаев, я руковожу отделом разработки мобильного приложения «Пункт Ozon». Это то самое приложение, которым сотрудники пунктов выдачи заказов сканируют штрихкод, чтобы выдать товар получателю. Оно внутреннее, для сотрудников. iOS-версией постоянно пользуются 12 тыс. человек, поэтому при постановке задачи нас не просили делать мультиязычную версию. Но мы с самого начала разработки решили поддерживать несколько языков — когда возникнет необходимость локализации, справимся в спокойном режиме и без проблем, свойственных проектам, в которых локализацию не закладывали. Я хочу рассказать, как мы побороли типичные проблемы локализации для наших iOS-проектов, зачем собрали свой линтер для локализации и как это всё помогло упростить и автоматизировать процесс.
https://habr.com/ru/companies/ozontech/articles/734214/
#ios
👉 @developer_mobila
👉 Создайте свое первое приложение под Android
📅 21 сентября в 20:00 в рамках курса «Android Developer» от OTUS.
Напишите приложение «Погода» самостоятельно за 60 минут
На занятии:
- создадим приложение из одного экрана, которое будет показывать погоду на данный момент в заданном городе, используя MVVM, Retrofit, Kotlin Coroutines, Piasso;
- узнаем, что создавать приложения под Android – не сложно и не страшно;
- познакомимся с архитектурой MVVM, получением данных из сети и организацией асинхронной работы с помощью Kotlin Coroutines.
📌 Урок доступен для всех желающих познакомиться с Android-разработкой. Это живой эфир, на котором вы сможете задать преподавателю любые вопросы в режиме реального времени!
Не упустите возможность совершенно бесплатно создать первый кейс для своего портфолио!
👉 Регистрируйтесь прямо сейчас
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Closures Vs. Combine Vs. Async Await
https://medium.com/@GetInRhythm/closures-vs-combine-vs-async-await-993eb1da4d44
#ios
👉 @developer_mobila
Перформанс 2ГИС для Android
Каждое большое приложение однажды сталкивается с задачей — увеличить скорость запуска. Не обошла она и приложение 2ГИС на Android. Расскажу, как команда тестирования искала причины медленного запуска.
https://habr.com/ru/companies/2gis/articles/734688/
#Android
👉 @developer_mobila
🤖 Разбираешься в Android разработке? - Проверь себя, пройди тест!
Хочешь расти дальше и создавать быстрые, оптимизированные приложения для Android - тогда наш курс для тебя!
Пройди тест из 20 вопросов и проверь свои знания. Сможешь сдать — пройдёшь на продвинутый курс "Android Developer. Professional " от OTUS по специальной цене.
Возможна оплата курса в рассрочку
👉 ПРОЙТИ ТЕСТ
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ruAtoms: управление состояниями в Swift
SwiftUI предоставляет отличную встроенную поддержку для работы с состоянием, но объектно-ориентированный подход может сделать разделение кода сложным. Именно здесь могут помочь атомы.
Atoms — это мощная и гибкая библиотека управления атомарными состояниями для Swift, предназначенная для создания компактных, независимых глобальных компонентов состояния с легкой адаптацией и композицией.
Atoms обеспечивают более гранулированный уровень управления состоянием, позволяя вам сосредоточиться на том, что вам нужно, не беспокоясь о том, куда что поместить. Избегая больших наблюдаемых объектов с большим количеством публикуемых свойств, атомы помогают избежать узких мест в производительности из-за рендеринга, сохраняя единый источник истины в архитектуре вашего приложения.
https://github.com/bangerang/swift-atoms
#ios
👉 @developer_mobila
Перф-тесты VS аномалии производительности на iOS
Чем больше задач выполняет приложение, тем тщательнее нужно следить за его производительностью. В статье на примере Яндекс Браузера и приложения Яндекс рассказали о том, как отслеживать аномалии метрик производительности на стороне клиента с помощью перф-тестов: основные принципы универсальны, их легко можно использовать для других типов приложений.
https://habr.com/ru/companies/yandex/articles/761388/
#ios
👉 @developer_mobila
🚀 Создайте свое первое мультиплатформенное приложение в прямом эфире
Да, это абсолютно реально, если у вас есть хоть какой-то опыт в программировании. Освойте инструмент, который позволит вам создавать приложения для iOS и Android.
С помощью технологии Flutter, под началом опытного преподавателя-практика, на бесплатном открытом уроке «Создаем умный будильник с интеграцией с Google Fit» от OTUS.
👀 На занятии:
— поговорим о механизмах обмена данными между Flutter-приложением и нативным кодом;
— сделаем приложение будильника, которое будет отслеживать сон, включать сигнал в подходящее время и отправлять информацию о режиме сна в Google Fit.
📣 Занятие пройдёт 28 сентября в 20:00 мск в рамках курса «Flutter Mobile Developer».
➡️ Пройдите вступительный тест и зарегистрируйтесь на вебинар!
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Compose Rich Editor — библиотека редактора для Jetpack Compose и Compose Multiplatform, полностью настраиваемая и поддерживающая общие функции rich text редактора. Она построена на основе TextField и поможет вам легко создать полноценный текстовый редактор.
https://github.com/MohamedRejeb/Compose-Rich-Editor
#Android
👉 @developer_mobila
Flexible Continuous Integration for iOS
https://medium.com/airbnb-engineering/flexible-continuous-integration-for-ios-4ab33ea4072f
#ios
👉 @developer_mobila
