Вышел Kotlin 1.6.0
Главное, что принёс нам новый релиз:
— стабилизированы фичи языка, добавленнные в Kotlin 1.5.30;
— улучшены повторные аннотации для Kotlin/JVM;
— экспериментальный Gradle-плагин Kover, который измеряет покрытие кода (альтернатива JaCoCo);
— новое экспериментальное управление памятью в Kotlin/Native;
— Kotlin/Native теперь поддерживает Xcode 13.
Подробнее об изменениях в блоге JetBrains: https://tprg.ru/PVR4
Если в Android Studio включены обновления, то новый Kotlin 1.6.0 установится автоматически.
#kotlin
Главное, что принёс нам новый релиз:
— стабилизированы фичи языка, добавленнные в Kotlin 1.5.30;
— улучшены повторные аннотации для Kotlin/JVM;
— экспериментальный Gradle-плагин Kover, который измеряет покрытие кода (альтернатива JaCoCo);
— новое экспериментальное управление памятью в Kotlin/Native;
— Kotlin/Native теперь поддерживает Xcode 13.
Подробнее об изменениях в блоге JetBrains: https://tprg.ru/PVR4
Если в Android Studio включены обновления, то новый Kotlin 1.6.0 установится автоматически.
#kotlin
Добавляем неоморфизм в Android-приложение
Неоморфизм призван отойти от стандартных Material-компонентов. Чтобы добавить его в своё приложение, можно воспользоваться библиотекой, которая изменяет стиль компонентов Jetpack Compose:
https://github.com/CuriousNikhil/neumorphic-compose
Разработчикам доступны три базовые формы, а также богатая кастомизация теней элементов.
#android #compose #библиотеки #ui
Неоморфизм призван отойти от стандартных Material-компонентов. Чтобы добавить его в своё приложение, можно воспользоваться библиотекой, которая изменяет стиль компонентов Jetpack Compose:
https://github.com/CuriousNikhil/neumorphic-compose
Разработчикам доступны три базовые формы, а также богатая кастомизация теней элементов.
#android #compose #библиотеки #ui
Создание общего SDK чата на KMM
Kotlin Mobile Multiplatform дал возможность разработчикам переиспользовать бизнес-логику в приложениях для Android и iOS.
В последнее время появляется всё больше успешных кейсов, и один из них — реализация кроссплатформенного SDK чата. Ребятам понадобилось создать удобный канал связи, который охватывает Android, iOS и веб.
Вот, что у них получилось: https://tprg.ru/os8a
#kmm #android #ios
Kotlin Mobile Multiplatform дал возможность разработчикам переиспользовать бизнес-логику в приложениях для Android и iOS.
В последнее время появляется всё больше успешных кейсов, и один из них — реализация кроссплатформенного SDK чата. Ребятам понадобилось создать удобный канал связи, который охватывает Android, iOS и веб.
Вот, что у них получилось: https://tprg.ru/os8a
#kmm #android #ios
Основы Combine
Combine — реактивный Swift-фреймворк, который позволяет обрабатывать последовательности асинхронно появляющихся во времени значений values.
Фреймворк может показаться сложным, поскольку в его концепции фигурируют три ключевых понятия — Publishers, Subscribers и Operators.
Гайд поможет разобраться с основами и использованием Combine:
https://tprg.ru/T095
#ios
Combine — реактивный Swift-фреймворк, который позволяет обрабатывать последовательности асинхронно появляющихся во времени значений values.
Фреймворк может показаться сложным, поскольку в его концепции фигурируют три ключевых понятия — Publishers, Subscribers и Operators.
Гайд поможет разобраться с основами и использованием Combine:
https://tprg.ru/T095
#ios
Большой курс лекций по Android для начинающих
Этим летом «Яндекс» открывал Школу мобильной разработки — курс по созданию полноценных мобильных приложений. Теперь записи лекций доступны бесплатно всем желающим:
https://tprg.ru/iMHp
В курсе освещены все важные для разработки приложений темы: основные Android-компоненты, асинхронная работа, архитектура приложений и тестов, работа с системой сборки Gradle и CI/CD.
Перед тем, как приступить к лекциям, рекомендуется освоить базу Android-разработки.
#android #начинающим
Этим летом «Яндекс» открывал Школу мобильной разработки — курс по созданию полноценных мобильных приложений. Теперь записи лекций доступны бесплатно всем желающим:
https://tprg.ru/iMHp
В курсе освещены все важные для разработки приложений темы: основные Android-компоненты, асинхронная работа, архитектура приложений и тестов, работа с системой сборки Gradle и CI/CD.
Перед тем, как приступить к лекциям, рекомендуется освоить базу Android-разработки.
#android #начинающим
👍4🥰1
Подборка актуальных вакансий для Android-разработчиков
— Android-разработчик в ОТР
Где: Удалённо
Стек: Android, Coroutines, Java, JSON, JUnit, Kotlin, Mockito, MVVM, REST API, RxJava
— Android Software Engineer в Revolut
Где: Удалённо
Стек: Android, Dagger, Kotlin, Room, RxJava
— Android-разработчик в Sportmaster Lab
Где: Москва, Санкт-Петербург, Новосибирск, можно удалённо
Стек: Android, Gradle, HTTP, Java, Kotlin, MVC, MVI, MVP, MVVM, Realm, REST API, Room, SQL, SQLite
#вакансии #работа
— Android-разработчик в ОТР
Где: Удалённо
Стек: Android, Coroutines, Java, JSON, JUnit, Kotlin, Mockito, MVVM, REST API, RxJava
— Android Software Engineer в Revolut
Где: Удалённо
Стек: Android, Dagger, Kotlin, Room, RxJava
— Android-разработчик в Sportmaster Lab
Где: Москва, Санкт-Петербург, Новосибирск, можно удалённо
Стек: Android, Gradle, HTTP, Java, Kotlin, MVC, MVI, MVP, MVVM, Realm, REST API, Room, SQL, SQLite
#вакансии #работа
Неоморфизм и его проблемы
На днях мы рассказывали о библиотеке, которая добавляет неоморфизм в компоненты Jetpack Compose. Многим такой стиль не понравился.
Давайте разберёмся, почему неоморфизм вызывает много споров и применим ли стиль на практике:
https://tprg.ru/Gic6
#ui
На днях мы рассказывали о библиотеке, которая добавляет неоморфизм в компоненты Jetpack Compose. Многим такой стиль не понравился.
Давайте разберёмся, почему неоморфизм вызывает много споров и применим ли стиль на практике:
https://tprg.ru/Gic6
#ui
Конфигурация сборки в Gradle: как это работает
В Android-приложениях основной системой сборки проекта является Gradle. Она выполняет важную задачу: собирает проект вместе со всеми зависимостями в единое приложение.
Знание того, как работает Gradle, поможет настроить сборку под конкретные требования. А разобраться в основах поможет статья:
https://tprg.ru/TEJm
Тот же материал, но в формате видео: https://youtu.be/GjPS4xDMmQY
#android #начинающим
В Android-приложениях основной системой сборки проекта является Gradle. Она выполняет важную задачу: собирает проект вместе со всеми зависимостями в единое приложение.
Знание того, как работает Gradle, поможет настроить сборку под конкретные требования. А разобраться в основах поможет статья:
https://tprg.ru/TEJm
Тот же материал, но в формате видео: https://youtu.be/GjPS4xDMmQY
#android #начинающим
YouTube
Gradle and AGP Build APIs: Configure your build - MAD Skills
In this first episode of Modern Android Development Skills on Gradle and AGP Build APIs, Murat will discuss how the Android build system works and learn the basics of Gradle.
Configure your build → https://goo.gle/31Wuhtk
Gradle build lifecycle → http…
Configure your build → https://goo.gle/31Wuhtk
Gradle build lifecycle → http…
Сколько чашек кофе успеваете выпить, пока проходит локальная сборка iOS-проекта?
Крутой подгон от Spotify — ребята выложили в открытый доступ библиотеку XCRemoteCache, призванную сократить долгое время локальных сборок.
Библиотека умеет в реализацию удалённого кэширования iOS-проектов, чтобы переиспользовать целевые артефакты из XCode, сгенерированные в CI-машинах.
По замерам разработчиков библиотеки, XCRemoteCache уменьшила время чистой сборки на 70%. Звучит серьёзно, не так ли?
Где почитать подробнее про XCRemoteCache: https://tprg.ru/INx3
#ios #библиотеки
Крутой подгон от Spotify — ребята выложили в открытый доступ библиотеку XCRemoteCache, призванную сократить долгое время локальных сборок.
Библиотека умеет в реализацию удалённого кэширования iOS-проектов, чтобы переиспользовать целевые артефакты из XCode, сгенерированные в CI-машинах.
По замерам разработчиков библиотеки, XCRemoteCache уменьшила время чистой сборки на 70%. Звучит серьёзно, не так ли?
Где почитать подробнее про XCRemoteCache: https://tprg.ru/INx3
#ios #библиотеки
Навигация в многомодульных приложениях на Jetpack Compose
Compose, навигация, многомодульная архитектура, инъекции зависимостей... Эти компоненты можно объединить в масштабируемой многомодульной архитектуре с помощью лучших практик Android-разработке. И в статье объясняется, как:
https://tprg.ru/5VyO
#android #compose
Compose, навигация, многомодульная архитектура, инъекции зависимостей... Эти компоненты можно объединить в масштабируемой многомодульной архитектуре с помощью лучших практик Android-разработке. И в статье объясняется, как:
https://tprg.ru/5VyO
#android #compose
Не стоит доверять оценкам в App Store
Даже если это приложение от Apple.
В Сети обратили внимание на то, что рейтинг в App Store приложения Apple Podcasts вырос с 1,8 до 4,7 меньше чем за месяц. При этом приложение не получило существенных обновлений за этот период.
Примечательно, что большая часть положительных отзывов связана не с самим приложением, а подкастами внутри него. Вероятно, Apple предложила дать оценку прямо внутри приложения, и пользователи по ошибке оценили подкасты, а не саму платформу.
Если подобная ситуация произошла с официальным приложением от Apple, то сложно представить, на какие ухищрения идут настоящие мошеннические приложения, чтобы иметь высокий рейтинг и висеть в топе App Store.
#ios
Даже если это приложение от Apple.
В Сети обратили внимание на то, что рейтинг в App Store приложения Apple Podcasts вырос с 1,8 до 4,7 меньше чем за месяц. При этом приложение не получило существенных обновлений за этот период.
Примечательно, что большая часть положительных отзывов связана не с самим приложением, а подкастами внутри него. Вероятно, Apple предложила дать оценку прямо внутри приложения, и пользователи по ошибке оценили подкасты, а не саму платформу.
Если подобная ситуация произошла с официальным приложением от Apple, то сложно представить, на какие ухищрения идут настоящие мошеннические приложения, чтобы иметь высокий рейтинг и висеть в топе App Store.
#ios
Монетизировать Flutter-приложение стало проще
На этой неделе вышла первая стабильная версия Google Mobile Ads SDK для Flutter. SDK работает с рекламными платформами AdMob и Ad Manager и помогает внедрить в приложение различные виды рекламы: баннеры, видео с вознаграждением, Interstitial (реклама между действиями) и не только (кстати, мы уже рассказывали о видах мобильной рекламы).
Подробнее о способах монетизации Flutter-приложения: https://flutter.dev/monetization
#flutter
На этой неделе вышла первая стабильная версия Google Mobile Ads SDK для Flutter. SDK работает с рекламными платформами AdMob и Ad Manager и помогает внедрить в приложение различные виды рекламы: баннеры, видео с вознаграждением, Interstitial (реклама между действиями) и не только (кстати, мы уже рассказывали о видах мобильной рекламы).
Подробнее о способах монетизации Flutter-приложения: https://flutter.dev/monetization
#flutter
Простой генератор QR-кода для Android
QR-коды сейчас крайне популярны, и здорово иметь при себе инструмент для быстрой генерации кода. Почему бы его не реализовать самостоятельно?
В ролике разбирается, как написать простой генератор QR-кода, в котором одной кнопкой выводится готовый QR-код:
https://youtu.be/pQ1KYUJpCGU
#android #начинающим
QR-коды сейчас крайне популярны, и здорово иметь при себе инструмент для быстрой генерации кода. Почему бы его не реализовать самостоятельно?
В ролике разбирается, как написать простой генератор QR-кода, в котором одной кнопкой выводится готовый QR-код:
https://youtu.be/pQ1KYUJpCGU
#android #начинающим
YouTube
Генератор QR кода для Андроид на Kotlin
На этом уроке делаем генератор QR кода под андроид с помощью Android Studio на языке программирования Kotlin.
Код урока можно найти тут: https://neco-desarrollo.es/exyg
Курс "Список покупок" на Kotlin и Room persistance library: https://www.udemy.com/course/room…
Код урока можно найти тут: https://neco-desarrollo.es/exyg
Курс "Список покупок" на Kotlin и Room persistance library: https://www.udemy.com/course/room…
Бесплатный курс по Flutter-разработке
Недавно мы рассказывали про свежий курс лекций от «Яндекса» по мобильной разработке. Помимо основного курса по Android-разработке, ребята проводили факультатив по фреймворку Flutter и уже выложили записи лекций:
https://tprg.ru/URGE
Вы познакомитесь с языком Dart и разберёте основные концепции Flutter: построение UI, работу с сетью, анимацию и популярные архитектурные подходы.
#flutter #курсы
Недавно мы рассказывали про свежий курс лекций от «Яндекса» по мобильной разработке. Помимо основного курса по Android-разработке, ребята проводили факультатив по фреймворку Flutter и уже выложили записи лекций:
https://tprg.ru/URGE
Вы познакомитесь с языком Dart и разберёте основные концепции Flutter: построение UI, работу с сетью, анимацию и популярные архитектурные подходы.
#flutter #курсы
Telegram
Мобильная разработка
Большой курс лекций по Android для начинающих
Этим летом «Яндекс» открывал Школу мобильной разработки — курс по созданию полноценных мобильных приложений. Теперь записи лекций доступны бесплатно всем желающим:
https://tprg.ru/iMHp
В курсе освещены все…
Этим летом «Яндекс» открывал Школу мобильной разработки — курс по созданию полноценных мобильных приложений. Теперь записи лекций доступны бесплатно всем желающим:
https://tprg.ru/iMHp
В курсе освещены все…
Как работать с рекламными сетями в условиях IDFA
Введение рекламного идентификатора IDFA в iOS-приложения достаточно сильно изменило рынок мобильной рекламы. Теперь необходимо запрашивать доступ к персональным данным пользователя и обрабатывать оба варианта, когда пользователь:
— предоставил IDFA;
— отказался от отслеживания.
Подробнее о нюансах работы с IDFA:
https://tprg.ru/i5Hw
#ios
Введение рекламного идентификатора IDFA в iOS-приложения достаточно сильно изменило рынок мобильной рекламы. Теперь необходимо запрашивать доступ к персональным данным пользователя и обрабатывать оба варианта, когда пользователь:
— предоставил IDFA;
— отказался от отслеживания.
Подробнее о нюансах работы с IDFA:
https://tprg.ru/i5Hw
#ios
👍1
Фикс Retrofit для корутин
В Retrofit 2.6.0 появилась полноценная поддержка корутин. Однако на практике работа с сетью происходит не совсем асинхронно: в некоторых случаях становится перегружен main thread приложения.
Ребята из 65apps выявили причину такого поведения и выпустили фикс для suspend-функций. Подробнее — в статье:
https://tprg.ru/3UaS
#android
В Retrofit 2.6.0 появилась полноценная поддержка корутин. Однако на практике работа с сетью происходит не совсем асинхронно: в некоторых случаях становится перегружен main thread приложения.
Ребята из 65apps выявили причину такого поведения и выпустили фикс для suspend-функций. Подробнее — в статье:
https://tprg.ru/3UaS
#android
iOS-фреймворк для анимации прокрутки
Gemini предлагает множество типов анимации: круговую, кубическую и различные 3D-эффекты. При желании можно реализовать собственную анимацию на базе имеющихся.
Как использовать: https://github.com/shoheiyokoyama/Gemini
#ios
Gemini предлагает множество типов анимации: круговую, кубическую и различные 3D-эффекты. При желании можно реализовать собственную анимацию на базе имеющихся.
Как использовать: https://github.com/shoheiyokoyama/Gemini
#ios
👍1
Модульность и DI в современном Android-приложении
Задумались над тем, чтобы разбить приложение на модули? Рекомендуем сначала ознакомиться с туториалом от «Яндекса»:
https://tprg.ru/ljsO
В нём вы узнаете, как можно грамотно разделить на модули, осуществить Dependency Injection между модулями и не налететь на подводные камни.
#android
Задумались над тем, чтобы разбить приложение на модули? Рекомендуем сначала ознакомиться с туториалом от «Яндекса»:
https://tprg.ru/ljsO
В нём вы узнаете, как можно грамотно разделить на модули, осуществить Dependency Injection между модулями и не налететь на подводные камни.
#android
Side Effects в Jetpack Compose
Side Effect или побочный эффект представляет собой изменение состояния Android-приложения, которое происходит за пределами области составной функции. На практике Side Effects помогают запускать корутины, управлять логикой в Compose и не только.
Подробнее о Side Effects в Compose:
https://youtu.be/NxwkaPdLQPk
#android #compose
Side Effect или побочный эффект представляет собой изменение состояния Android-приложения, которое происходит за пределами области составной функции. На практике Side Effects помогают запускать корутины, управлять логикой в Compose и не только.
Подробнее о Side Effects в Compose:
https://youtu.be/NxwkaPdLQPk
#android #compose
Таймер с симуляцией волн
Нашли интересный проект на GitHub, где реализована красивая анимация волн, синхронизированная с таймером. Реализовано на Kotlin и Jetpack Compose.
Как это работает: https://github.com/manueldidonna/waves-timer-animation
#android #ui #compose
Нашли интересный проект на GitHub, где реализована красивая анимация волн, синхронизированная с таймером. Реализовано на Kotlin и Jetpack Compose.
Как это работает: https://github.com/manueldidonna/waves-timer-animation
#android #ui #compose
А точно ли UIKit про графический интерфейс?
UI приложения — это не только графический интерфейс, но и интерфейсы взаимодействия пользователя: тачскрин, клавиатура или мышь. И сам UIKit в iOS-приложении отвечает за последнее — распознавание и обработку пользовательских жестов.
Как же так, если у UIKit есть базовый класс UIView, через который мы настраиваем наш UI? Давайте разбираться:
https://tprg.ru/Pdow
#ios #начинающим
UI приложения — это не только графический интерфейс, но и интерфейсы взаимодействия пользователя: тачскрин, клавиатура или мышь. И сам UIKit в iOS-приложении отвечает за последнее — распознавание и обработку пользовательских жестов.
Как же так, если у UIKit есть базовый класс UIView, через который мы настраиваем наш UI? Давайте разбираться:
https://tprg.ru/Pdow
#ios #начинающим
👍1