Android Broadcast – Telegram
Android Broadcast
14.4K subscribers
3.68K photos
367 videos
11 files
6.1K links
Подборка новостей и статей для Android разработчиков.

Реклама и связь с автором @ab_manager

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
Когда идет в работе системы что-то не так, то самый популярный ответ: "Перезагрузи. Не помогло? Сбрасывай"

Это же актуально и для Android проектов. Стандартный "Clean Project" не решит всё, есть еще много всего связанного со сборкой проекта и работой IDE
👉 Удаление папок Gradle build
👉 Удаление кэша Gradle - папка .gradle в корне проекта
👉 Можно удалить весь Gradle кэш в домашней папка пользователя

Почитал эти советы из статьи (EN,13м), где автор еще и автоматизировал всё это через скрипты, которые можно взять в тексте

#androidstudio #gradle
🔥24👍11👏4🤯3
Серия из 3 статей про описание шаблонов файлов и генерация кода проектов на основе их с помощью встроенной фичи IntelliJ - File Templates

Статьи цикла:
1️⃣Возможности File Templates
2️⃣Пример использования для создания кода новой фичи
3️⃣Как переносить шаблоны между разработчиками/IDE

#idea
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Вышел Kaspresso 1.6.0: множество улучшений и исправлений багов! Ребята выкатили все изменения длинным списком и не понять что из этого важнее, поэтому пишите в комментариях, что важного для вас в этом релизе или наоборот не дождались

#android #тестирование
👍37
🏝 Управление событиями в ViewModel с помощью StateFlow, SharedFlow и Channel (6м)

В статье описывается, что выбрать StateFlow, SharedFlow или Channel для работы с событиями в ViewModel

#android #coroutines
Please open Telegram to view this post
VIEW IN TELEGRAM
👍28
Что вы используете для отправки события в UI (например, для показа Toast) из ViewModel?
Anonymous Poll
39%
StateFlow
27%
SharedFlow
20%
Channel
5%
Другой подход (пишите в комментариях)
9%
Не участвую
🔥11👍4
Руководство по Push уведомлениям (12м)

В статье раскрывается
👉 Что такое пуш, а что уведомление и почему их нужно различать.
👉 Как работают пуш уведомления.
👉 Какие виды пушей и уведомлений могут быть в вашем приложении.
👉 Что влияет на доставку пушей.
👉 Почему доставка пуша не означает, что уведомление было показано.
👉 Как узнать, что пуши не доходят
👉 Что можно сделать, чтобы спасти пуши.

Я уверен, что вы знаете кому стоит это отправить 😁

#android
💯24🔥12👍9
Поиск баланса между рекламной монетизацией и покупками внутри приложения (IAP) — главный тренд игровой аналитики 2024 года

Почитал интервью с Даниилом Восторговым, Product Owner в AppMetrica

Ключевые достижения сервиса 2024 года
👉 Количество приложений с AppMetrcia превысило 60 000
👉 Подключили интеграцию с трекинговыми системами (AppsFlyer, Adjust и др.) для объединения данных из разных источников.
👉 Запустили инструмент «Инсайты»
👉 Внедрили предиктивную аналитику

Итоги рынка рекламы в мобильных приложениях
👉 Компании фокусируются на работе с текущими пользователями
👉 Интерес к ML и AI растет

Что ждать в 2025 году:
👉 Дальнейший поиск баланса между IAP и рекламой в игровых приложениях.
👉 Упор на автоматические инсайты и удобство использования аналитики.
👉 Новые инструменты для повышения дохода без ухудшения UX.

Как вы видите баланс между IAP и рекламой в своих приложениях? Какую роль сыграет AI? Делитесь в комментариях!

#appmetrica #aналитика
👍6
Media is too big
VIEW IN TELEGRAM
📹 Переезжаем с фрагментов на (De)compose (35м)

В процессе перевода проекта на Jetpack Compose рано или поздно появляются вопросы: зачем нам вообще фрагменты, активити и вьюмодели, ведь можно реализовать навигацию прямо между Composable-функциями.

В приложении Мой Beeline разработчики двигаются в сторону компонентного подхода с помощью Decompose, так как он показался нам самым надёжным и стройным в своей красоте.

Своим докладом Павел Королев хочет показать, что жизнь за пределами стека Google существует. А также поделиться опытом, учитывая количество существующего кода, модульность проекта и стремление остаться в балансе с простотой решения.

#android #compose #навигация #decompose
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥127
Что не так с этим кодом? (Код на Kotlin 2.1.0)

Ответ можно найти в статье

// Описываются события который могут происходить в UI
// чтобы потом отправить в код логики обработки
sealed interface UiEvent {

/** Выбран элемента из списка */
data class UserProfileClicked(val userId: UserId) : UiEvent

/** Нажатие на кнопку подтверждения действия */
data object ConfirmClicked : UiEvent
}

@JvmInline
value class UserId(val id: String)

class MyViewModel: ViewModel() {

// Какое-то состояние экрана
private val _state = MutableStateFlow<State>(State.Default)
val state = _state.asStateFlow()

fun onUiEvent(event: UiEvent) {
// Обработка события из UI
}
}
🤯33👍5🔥1
Обзор способов (EN,6м) как показать картинку в App Widget при использование Glance (Compose для App Widget). Начинают с R.drawable и заканчивают интеграцией с ContentProvider и Glide

#android #appwidget #jetpack #glance #compose
👍135
This media is not supported in your browser
VIEW IN TELEGRAM
🤯 Что не так с использование object и data class читайте в статье на Хабре (3м)

Буду очень признателем вашим лайкам текста на Хабре

#kotlin #android
🎉26🤯12🔥7👍4👏2
🔨 Вышла первая Canary версия Android Studio Meerkat Feature Drop 2024.3.2

👉 Появилась библиотека с запросами для Gemini

👉 Добавили возможность тестировать
Android Backup and Restore. Собираете Backup на одном устройстве и проверяете восстановление на другом. Работает с физическими устройствами и эмуляторами, но надо чтобы были Google Play Services

#android #androidstudio #gemini
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥7
TestParameterInjector - test runner для JUnit 4 и 5, который запускается тестовые методы с разными комбинациями значенияй параметров/полей. Сможете проверить разные случа и повысить процент покрытия тестами.

Вот тут можно почитать подробнее о преимуществах решения от Google

#тестирование #google
👍124🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Compose Preview Function Creator - плагин для Android Studio, чтобы быстро генерировать превью для Composable функций

#androidstudio #android #compose
👍76🔥8🤯4
🤯 Поиск по Maven Central закрывается

Столкнулся с ситуацией, что не могу найти свой новый опубликованный артефакт на официальном поисковике Maven Central - search.maven.org. Причина - он закрывается и будет заменён на central.sonatype.com. Подробности читайте тут

Как итог - я не могу зарегистрироваться в Google Play SDK Console из-за того что там для проверки используется поиск через старый портал 😂

#maven
🤯50🔥11👍4
Голосуйте за свою самую любимую фичу Kotlin в опросе в @kotlin_broadcast
💯5👍3
🎉 Вышел стабильный релиз ViewBindingPropertyDelegate 2.0

Мажорная версия обновилась из-за изменения работы библиотеки под капотом. На смену использования Lifecycle для отслеживания события создания/уничтожения View в Activity/Fragment пришли ActivityLifecycleCallback и FragmentLifecycleCallback, что позволило избавиться от багов при переключении Fragment и других моментов.

Последствием такого стало удаление множества API, которое писалось как необходимая часть для корректной работы. Например, библиотека под капотом не выполняет никаких проверок на то корректный ли момент для получения View сейчас, а полностью полагается на поведение системы и Jetpack библиотек.

Следствием таких изменение стало смена пакета API c com.github.kirich1409.viewbindingpropertydelegate на dev.androidbroadcast.vbpd, а также id артефакта в Maven Central. Это позволит работать версии 1.X и 2.X быть подключенным в проект одновременно и делать миграцию поэтапно. Либо просто выполним глобальную замену строки со старым пакетом на новый!

Знаю, что в эру Compose вам уже и не нужна эта библиотека, но точно не все перешли на Compose и пользователи решения остаются!

Если вы найдёте баги или проблемы - пишите в комментариях под постом или создавайте issue

#android #viewbinding #AndroidBroadcast
11👍65🔥215🤯3
Кофе для автора ☕️
Нравится канал @android_broadcast ? Поддержите автора, угостив чашкой кофе. Больше энергии — больше контента!
3🤯18👍7💯3
Forwarded from AvitoTech
Открываем набор на оплачиваемую стажировку 🔥

Вы спрашивали, вы ждали, и вот мы возвращаемся с анонсом стажировки для разработчиков! 6 месяцев, от 25 часов в неделю и 5 направлений: Frontend, Backend, iOS, Android и QA.

Сразу отвечаем на возможные вопросы:
🔵 работа из офиса, удалённо или в гибридном формате на выбор;
🔵 зарплата обсуждается на этапе интервью;
🔵 после программы в компании остаются 80% стажёров.
А ещё вы будете решать реальные задачи бизнеса вместе с разработчиками Авито. Звучит круто!

💻 Узнать требования для каждого направления и попробовать свои силы можно тут.

#avitostart
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4
‼️ Теперь всем приложениям надо поддерживать обе ориентации экрана, а также большие экраны

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

По простому - разработчикт будут обязаны поддержать поворот экрана и большие экраны, или ваше приложение будет выглядеть плохо (растягиваться)

#android16 #планшет
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯181🎉17👍13🔥4👏1