Получи случайную криптовалюту за регистрацию!

Android Live 🤖

Логотип телеграм канала @android_live — Android Live 🤖 A
Логотип телеграм канала @android_live — Android Live 🤖
Адрес канала: @android_live
Категории: Технологии
Язык: Русский
Количество подписчиков: 5.94K
Описание канала:

Самые свежие новости, новинки и тренды Android от практикующего разработчика.
Автор: @al_gorshkov,
Чат: @android_live_chat
YouTube: youtube.com/channel/UC1BmHcuVShCt3Rb1eENbiAA
По рекламе: @ek_gorshkova

Рейтинги и Отзывы

2.67

3 отзыва

Оценить канал android_live и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

0

4 звезд

1

3 звезд

1

2 звезд

0

1 звезд

1


Последние сообщения 4

2022-06-06 15:05:00
Хочешь попробовать себя в Android-разработке?

Приглашаем 16 июня в 20:00 на открытый урок в OTUS, где мы создадим приложение для трекинга воды. Занятие проведет Даниил Попов, разработчик в компании Bolt Technology OÜ (Эстония).

Мы разработаем приложение для отслеживания количества воды, которое человек пьет в сутки. Для этого мы нарисуем стаканчик и будем заполнять его по мере того, как пользователь отмечает сколько воды он выпил за сутки.

Вебинар пройдет в рамках специализации «Android Developer». Это возможность оценить материалы курса и познакомиться с экспертом.

Для участия необходимо зарегистрироваться.

#партнёрский
1.1K views12:05
Открыть/Комментировать
2022-06-02 16:19:13 ​​Parallax Effect в Jetpack Compose
#compose

Попалась красивая реализация эффекта параллакса, которая написана на Jetpack Compose.
Не уверен на 100%, что вам есть где использовать этот эффект в приложении, но любопытно посмотреть на саму реализацию. Тем более, на столь популярном в последнее время Compose.

@Composable элементы меняют своё положение на основе ориентации устройства и приходящих данных с SensorManager. Далее, создаётся DisposableEffect, который используется для репозиционирования Image.

Автор добавил немного модификаторов для тени и карточки. В итоге получился приятный и красивый эффект.
Чуть больше деталей реализации, ну и, конечно, примеры кода можно найти тут.
1.2K views13:19
Открыть/Комментировать
2022-05-26 14:05:00 ​​Как мы уменьшили ANR в 3 раза
#android

Ошибка "Приложение не отвечает" — весьма неприятное событие для пользователя, ведь в этом случае он вынужден закрывать приложение и делать незавершённое действие с начала.
Кроме этого, эти ошибки довольно непросто повторить и поправить, ведь они могут то появляться, то исчезать, а также иметь зависимость от устройств.

Вот неплохая статья, которая описывает то, откуда вообще появляются ANR и то, как с ними бороться.
Автор говорит, что они ощутимо снизили процент этих ошибок в своём приложении, а также значительно улучшили время старта приложения.
1.3K views11:05
Открыть/Комментировать
2022-05-25 15:05:00 ​​ Для новичков, обучение с нуля

Начать карьеру в этой области с нуля поможет специализация «Android Developer». Вас ждет 10 месяцев освоения трендов Android-разработки на Kotlin от экспертов-практиков из ведущих IT-компаний.

Вы шаг за шагом получите все необходимые для работы навыки: от синтаксиса Kotlin и принципов создания приложений до технологии и инструментов Middle+ уровня.

Оставьте заявку и забронируйте место со скидкой

Для опытных Android-разработчиков

Как Android-разработчику перейти на новый уровень? Для этого нужно уметь проектировать архитектуру приложений, глубоко разбираться в Android SDK, выстраивать инфраструктуры с нуля, тестировать приложения и знать современные библиотеки и фреймворки.

Именно этим навыкам обучают на онлайн-курсе «Android Developer. Professional». На протяжении 5 месяцев вы будете работать над собственным проектом — тонким клиентом к сервису с публичным API, которое усилит ваше портфолио

Пройдите вступительный тест и занимайте место на курсе по спец.цене.

#партнёрский
1.1K views12:05
Открыть/Комментировать
2022-05-24 10:05:00 ​​Material You в Jetpack Compose
#design #compose

Не так давно в Android появилась фича, которая позволяет адаптировать темы приложения под цвета пользовательского интерфейса.
То есть теперь у пользователя, в теории, может быть не только светлая и тёмная темы, но и множество вариантов, в зависимости от преобладающего цвета в его обоях.

Попалась любопытная статья, где автор применяет библиотеку Material Design 3 к своему небольшому приложению, написанному на Compose.
Тут можно подсмотреть, как лучше хранить цвета и ресурсы для тем в Compose, как лучше сделать динамические темы, да и то, как начать переезд на эту фичу в своём приложении.

Выглядит здорово, надеюсь на поддержку этой фичи в основных приложениях.
1.5K views07:05
Открыть/Комментировать
2022-05-18 14:05:00 ​​Тесты для уведомлений
#android #tests

Попалась любопытная статья, где описывается хороший кейс для тестирования уведомлений в Android.

Вообще, если в проекте и пишутся тесты, то нотификациям уделяется совсем мало внимания: иногда создаётся интерфейс, который мОкается в тестах, но который при этом не имеет отношения непосредственно к показу этих уведомлений.

Автор делится своим опытом, как корректно подключить NotificationManager, как проверить, какое действие выполнилось при открытии пуша, и показывает в реальном приложении написанные для уведомлений тесты.
1.2K views11:05
Открыть/Комментировать
2022-05-17 15:05:00
Mobius 2022 Spring — три дня докладов, воркшопов, круглых столов и дискуссий обо всем, чем живет мобильная разработка.

Конференция пройдет 25–27 мая, на 80% в онлайне, но в этот раз будет еще и offline-день. 22 июня в Санкт-Петербурге соберутся все, кто соскучился по живым выступлениям, дискуссионным зонам и тусовкам. 

В программе набралось много докладов про разработку для Android — от UI до архитектур. Вот некоторые из них:
«Positional memoization, или Как работает одна из главных концепций Jetpack Compose».
«Анимации в Compose».
«Deep Dive Into Deep Link».
«Вращаем невращаемое, или Как повернуть экран звонка».
«Вы за это заплатите! Цена чистой архитектуры».
«Многомодульность и Koin 3».
«Системный подход к улучшению старта Android-приложения».

Найти полную программу и купить билеты можно на сайте. А по этому промокоду вы получите скидку на персональный билет: androidlive2022JRGpc

#партнёрский
592 views12:05
Открыть/Комментировать
2022-05-16 17:05:00 ​​Gradle version catalogs
#gradle

Если ваш проект состоит из одного модуля, то управление зависимостями — довольно простая задача. Но как только вы переходите на многомодульность, то всё становится несколько сложнее.

Есть несколько вариантов решения этой задачи:
Управлять вручную — в каждом из модулей у вас будут повторяться те библиотеки, которые вы добавляете. Думаю, что нет смысла говорить, что этот подход не очень хороший.

Блок ext — подход, которым часто пользуется сам Google, и который как раз решает проблему из первого пункта. Правда в таком случае нет автозаполнения кода при написании.

buildSrc — можно использовать специальный gradle-модуль, где как раз и описать эти зависимости.

Но есть ещё один, менее известный, но очень удобный подход — это Version Catalogs. Он доступен в версии Gradle 7.4, и очень удобно описывает все зависимости проекта.

Подробная инструкция с тем, как всё добавить к себе тут.

Android Studio поддерживает этот формат файлов, а ещё есть плагин, который перенесёт задачу обновления компонентов на CI.
1.3K views14:05
Открыть/Комментировать
2022-05-13 18:05:00 ​​Kotlin Contracts
#kotlin

Не очень часто используемой, но интересной и полезной фичей являются Contracts.

Основная цель контрактов — помочь компилятору Kotlin в анализе кода в случаях, когда разработчик знает о коде больше деталей, чем может увидеть компилятор.

Вообще копилятор делает много крутых оптимизаций и проверок, однако порой он ведёт себя слишком строго и разработчику приходится добавлять или какие-то костыли, или дополнительные проверки для того, чтобы скомпилировать код. Контракты как раз и позволяют сказать компилятору, что всё с кодом нормально и что разработчик понимает, что тут делается.

Я нашёл парочку примеров, где контракты могут быть полезны, ну и станет понятнее, что это вообще за фича:
- автор добавил контракт для проверки пустого списка, который может быть null;
- тут автор использует контракты для проверки лямбда-функций и при инициализации в них переменных;

Будет круто, если поделитесь своими примерами использования этой фичи в своих проектах.
1.3K views15:05
Открыть/Комментировать
2022-05-12 17:08:29 ​​Koin 3.2 - New DSL
#koin

Тут совсем недавно вышло крутое обновление библиотеки Koin, которое позволяет гораздо проще настраивать сам Koin — Constructor DSL.

Раньше типичный модуль в Koin выглядел следующим образом:

class MyClassA()
class MyClassB(val a : MyClassA)

// Let Koin find dependencies for you with get()
module {
single { MyClassA() }
single { MyClassB(get()) }
}


Как видно, в MyClassB нужно добавить get() по количеству параметров, которые в этот класс передаются. Если таких параметров будет много, то и число этих get() будет кратно увеличиваться.

В новой же версии мы получаем более удобную структуру:

class MyClassA(val id : String)

module {
singleOf(::MyClassA)
}

// in calling code
val classA : MyClassA by inject { parametersOf("_id_")}

То есть теперь все вызовы get() останутся в прошлом, и мы получим гораздо более красивый и читаемый код.
Больше примеров кода и инфа о других изменениях по ссылке.
1.3K views14:08
Открыть/Комментировать