How to move View with Keyboard in Android using Kotlin
Несколько дней назад решил чутка заморочиться и сделать анимацию кнопки при появлении клавиатуры на API 30+, а сегодня на глаза попалась статья, в которой как раз подробно разибрается как это реализовать.
У меня правда кейс был чуть посложнее, чем пример из статьи – было 3 кнопки вертикально и двигать нужно было самую верхнюю.
Вот еще несколько статей, которыми я воспользовался. Они 2020 года и там некоторые методы уже Deprecated, но суть понятна.
👉Animating your keyboard (part 1)👉Animating your keyboard (part 2): reacting to WindowInset animationsЧитать (En)
❓ Хочешь попасть в Android-разработку? Сделай первый шаг к построению карьеры в IT!
👉 OTUS приглашает на открытый урок «Обзор возможностей анимации на Android»
https://otus.pw/HToZ/
💪 На занятии мы с экспертом-практиком рассмотрим варианты анимации интерфейса в приложении Android.
Повторим на практике удачные решения и покажем, как это делать в реальном проекте.
📌 После вебинара обучение Android-разработке с нуля продолжится на специализации «Android Developer» — онлайн-курсе для тех, кто хочет освоить новую профессию.
👉 Для участия зарегистрируйтесь https://otus.pw/yGJo/
Few steps to new level security — Play Integrity API for Android apps.
Полезная статья о том, как можно повысить уровень безопасности вашего приложения с помощью Play Integrity API.
Читать (En)
Delegation Pattern: An effective way of replacing Android’s Base Activity with native Kotlin supportСтатья в которой рассматриваются общие вопросы паттерна Delegation и в качестве примера показано как с помощью Kotlin Delegate можно избавиться от Base Activity.
Базовые классы vs Делегаты – вечно холиварная тема. На всякий случай про базовые классы, т.к. в Java/Kotlin нет множественного наследования классов, приходиться всё пихать в базовый класс, что собственно нарушает Single Responsibility Principle из SOLID.
Читать (En)
Иерархия модулей: как выстроить связи между модулями в Android
Еще одна полезная статья от ребят с HH, про зависимости между модулями, да и в целом про то, как выстроить иерархию модулей в Android.
Читать (Ru)
❗️Почему большинство приложений на SwiftUI пишется на Flux?
⚡️Приглашаем 22 августа в 20:00мск на открытый вебинар«Flux в SwiftUI, самая эффективная архитектура на 2022 год?».
📚План занятия:
Разберем очевидные проблемы MVVM при создании iOS приложений на SwiftUI
Рассмотрим возможные расширения MVVM с помощью SOA и Coordinator паттернов
📌Ответим на вопрос: почему большинство приложений на SwiftUI пишется на архитектурной концепции Flux
👉🏼Регистрация на вебинар: https://otus.pw/Ow49/
Migrating My App To Android 13
Как вы все уже знаете, пару дней назад зарелизили Android 13, в котором появилось несколько важных изменений по типу runtime permissions для нотификейшнов, permissions для media и т.д.
Сообственно если еще не разбирались, вот статья с подробным описанием по миграции на Android 13.
Читать (En)
Comparing Jetpack Compose performance with XML
Если вы уже используете Jetpack Compose или собираетесь использовать, то наверняка вам будет интересно посмотреть сравнение производительности Jetpack Compose vs XML.
В результате, практически во всех проведенных тестах выигрывает XML.
Читать (En)
Ошибка в stacktrace из продакшена
Полезная статья о том, как stacktrace может указывать на неверное место возникновения ошибки и как анализировать обфусцированный код.
Всему виной оптимизация R8 + ProGuard, ну и определенные версии kotlin stdlib и AGP.
А вообще с R8 и ProGuard постоянно всплывают какие-то траблы, это прям отдельная тема.
Читать (Ru)
Продолжается набор начинающих Android и iOSразработчиков на стажировку в Яндексе!
Чем занимаются стажеры?Создают фичи, которые окажутся в production и их увидят десятки миллионов людей:
– Разрабатывают новое меню внутри приложения Яндекс Go;
– Улучшают интеграцию Яндекс. Дзена в Браузере;
– Улучшают инфраструктуру и интерфейс голосового помощника Алисы;
– Обновляют дизайн Яндекс.Переводчика;
И это еще не все! 🚀
Условия стажировки гибкие: от 3 до 6 месяцев оплачиваемой работы, возможность выбрать занятость (20-40 часов). Подать заявку можно на сайте: https://clck.ru/scjat
Clean Android multi-module offline-first scalable app in 2022
Крутая статейка с примером проекта, который включает в себя наверное самые актуальные технологии на данный момент. В избранное ✅
👉 Multi-module
👉 Jetpack Compose
👉 MVI
👉 Kotlin Сoroutines
👉 Kotlin Flow
👉 Kotlin serialization
👉 Hilt
👉 Room
Код на GitHub → Android Kotlin starter project - 2022Читать (En)
Как работает WorkManager в Android
Полезная статья про тонкости работы с WorkManager, базовые методы и как сделать так, чтоб система не грохнула фоновый процесс.
Читать (Ru)
Testing Room database with Coroutines and FlowsТретья часть из цикла статей "AndroidTesting Fundamentals", в которой рассказывается про тестирование Room в связке с Coroutines + Flows.
Читать (En)
Kotlin Flow: Best Practices
Несколько советов при работе с Kotlin Flow.
👉 Use catch operator
👉 Play with launchIn
👉 Inject Dispatcher in flowOn
👉 Expose immutable StateFlow
Читать (En)