Android Broadcast
14.2K subscribers
3.52K photos
339 videos
11 files
5.89K links
Подборка новостей и статей для Android разработчиков.

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

РКН https://abdev.by/rkn_tg_ab
Download Telegram
#Gradle

Gradle Dependency: api vs implementation

Визуализация отличий между подключением зависимостей в Gradle через implementation и api
#KotlinVocabulary #Kotlin #AndroidDev

Collections and sequences - Kotlin Vocabulary (5:17)

Google решила что вместо создания нового контента, лучше снять видео на свою старую статью
Android Broadcast
🔴 Стартует собеседование на Mobile Developer. Алексей Панов, Контур Алексей Панов проведет собеседование на позицию «Mobile Developer» P.S. Запись останется на канале после эфира #AndroidBroadcast #собеседование
Благодаря одной из подписчиц (Динара, спасибо!) появились таймкоды под вчерашним собесом от Леши Панова

00:21 Вступление
01:37 Знакомство с экспертом
05:28 Знакомство с кандидатом
06:53 О формате собеседования
07:30 Часть 1. KMP. Проектирование
51:50 Фидбэк по первой части
54:50 Часть 2. Корутины
01:25:48 Фидбэк по второй части
01:26:41 Часть 3. Jetpack Compose
01:35:36 Фидбэк по третьей части
01:39:24 Впечатления кандидата
01:40:17 Общий фидбэк
01:44:03 Разбор вопросов из чата
01:50:00 Заключение
👍58👎4
Media is too big
VIEW IN TELEGRAM
📺 Lifecycle path to Multiplatform (20 мин)

Недавно библиотеки Jetpack Lifecycle обзавелись поддержкой KMP. Из видео вы больше узнаете о том
👉 как проходил этот процесс, каковы реальные проблемы
👉 связанные с поддержанием обратной совместимости API
👉 какие уроки извлекли из работы с ограничениями KMP команда
👉 что поможет вам перенести ваши собственные библиотеки на KMP

Это перезалив видео с официального канала Android Developers, чтобы ограничения YouTube не сказались на расширении знаний. Ставьте 🤖 если стоит делать так и дальше с перезаливом видео от Google

#androiddev #google #kmp #jetpack #видео
Please open Telegram to view this post
VIEW IN TELEGRAM
90👍13👎8
🚀 В Jetpack Saved State добавили поддержку KotlinX Serialization

Теперь с помощью методов encodeToSavedState() и decodeFromSavedState() можно сохранить любой класс с аннотацией @Serializable. Можно попробовать в версии 1.3.0-alpha05

Всё это доступно в KMP Common коде и теперь Parcelize не нужен будет

#jetpack #kmp #android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
👍55🔥51
🚀 SavedStateHandle в ViewModel получил поддержку KMP

Благодаря поддержке KotlinX Serialization в SavedState получилось сделать перенос сохранения ViewModel в KMP Common код. Появился специальный делегат saved(), который делает сохранение и восстановление

#jetpack #kmp #android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥30👍1
⚙️ В CameraX 1.5.0 (пока в статусе альфа) появится поддержка Compose из коробки

#compose #camerax #камера #jetpack #android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35🔥10
Пример App Widget из Tier 1
👉 Персонализированы (работают с Material You)
👉 Используют всё доступное место
👉 Следуют лучшим практикам размещения компонентов
👉 Полезные для пользователя

#android #androiddev
👍34👎73
🧠 OpenAI представила Codex — нового AI-ассистента для разработчиков

Codex — это облачный агент, встроенный в ChatGPT, который помогает писать код, находить и исправлять баги, запускать тесты и даже предлагать pull request’ы. Он работает в изолированной среде, предварительно загруженной вашим репозиторием, и может выполнять задачи параллельно.

🔧 Как подключить Codex в IDE?

На данный момент Codex интегрирован в ChatGPT и доступен подписчикам Pro, Team и Enterprise. Для использования в IDE можно воспользоваться следующими способами:
1. GitHub Copilot: Интегрируется с VS Code, JetBrains и другими IDE. Copilot использует модели OpenAI для автодополнения кода.
2. Codex CLI: Лёгкий агент, работающий в терминале. Устанавливается через npm и позволяет взаимодействовать с кодом напрямую из командной строки.

🧪 Как попробовать Codex?

Если вы подписаны на ChatGPT Pro, Team или Enterprise, Codex уже доступен вам через боковую панель в ChatGPT. Просто введите запрос и нажмите “Code” для генерации кода или “Ask” для вопросов о вашем коде. Позже обещают в подписку Plus и Edu

#AndroidDev #OpenAI #Codex #AI #Разработка #ChatGPT
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤯41🤔1
🚀 Новая Jetpack библиотека - Test Uiautomator Shell

Показали первую альфа версию Jetpack Test Uiautomator Shell - решения для выполнения команд в терминале. Фактически это backport UiAutomation.executeShellCommandRwe из API 34 (Android 14).

#android #androiddev #тестирование #автотесты
Please open Telegram to view this post
VIEW IN TELEGRAM
👍142🔥2
🤖 Почему разработчик не контролирует, как выглядят уведомления в системной панели

Когда разработчик использует NotificationCompat.Builder для создания уведомлений из Android приложения, может показаться, что прямого контроля на внешний вид нету 🤯 На самом деле формируется не визуальный компонент, а объект данных, который описывает что есть в уведомление.

Этот объект — это просто структура, сериализуемая через Parcelable. Он передаётся в системный процесс через Binder — механизм межпроцессного взаимодействия в Android. А вот принимать и интерпретировать этот объект будет специальное системное приложение — SystemUI.

Уведомления отображаются не Android сам по себе, а конкретное приложение, которое называется com.android.systemui. И это приложение полностью отвечает за то, как будет выглядеть уведомление. Оно решает, какие поля отобразить, где их разместить, какой стиль применить, как будет выглядеть кнопка, будут ли видны иконки — и многое другое. Часть из данных может игнорироваться.

Вот почему одно и то же уведомление может выглядеть совершенно по-разному на разных устройствах и версиях ОС. Один и тот же вызов setContentTitle("Новость") может дать совершенно разный результат на Pixel с чистым Android и на Xiaomi с MIUI. Более того, даже RemoteViews, которые позволяют задавать кастомные layout’ы для уведомлений, могут игнорироваться или ограничиваться прошивками производителей.

Именно по этой причине я не люблю когда в уведомления вставляют Custom View, который выбивается из стиля и часто портит визуал системы и поведение. Мечтаю чтобы его поскорее запретили в Android. Пожалуйста, хотя бы в Android 17 🙏

Запомните ‼️ Уведомление в Android — это не UI объект, это контракт между приложением и SystemUI, который интерпретируется, а не исполняется дословно. Поэтому пишите уведомления так, чтобы они были понятны системе, а красоту UI вы можете контролировать только внутри вашего приложения.

#android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍736
🚀 Media3 1.8.0 — апдейт, который стоит внедрить прямо сейчас

Google продолжает прокачивать медиа API, и в этом релизе есть фичи, которые экономят время разработки и улучшают UX.

📺 ExoPlayer
👉 Плавная перемотка: новый ScrubbingMode делает скролл прогресс-бара без отрыва пальца супер-отзывчивым. Пользователь почувствует разницу.
👉 Встроенная видео-реклама: нативная поддержка Ads Interstitials в стриминге — меньше костылей.
👉 Длительность видео без проигрывания:
val duration = MetadataRetriever
.Builder(context, mediaItem)
.build()
.use { it.retrieveDurationUs().await() }

👉 PreCacheHelper — загрузка контента по частям для более быстрых стартов.

🎵 MediaSession
👉 Плеер в шторке не исчезает сразу после паузы — пользователю проще вернуться к просмотру.

✂️ Transformer API
👉 Экспериментальная обрезка видео через MP4 edit list.
👉 Опция CodecDbLite — ускоряет кодирование, подбирая оптимальные настройки под чипсет:
Transformer.Builder()
.setEncoderFactory(
DefaultEncoderFactory.Builder()
.setEnableCodecDbLite(true)
.build()
)
.build()


💡 Почему обновляться сейчас
👉 Меньше кастомного кода — больше нативных возможностей.
👉 Повышение отзывчивости плеера = выше удержание пользователей.
👉 Новые API для подготовки к интеграции рекламы и улучшенного UX.

Подробнее в анонсе или в changelog

#android #AndroidDev #Jetpack #Media3 #ExoPlayer
Please open Telegram to view this post
VIEW IN TELEGRAM
👍34🔥131
Media is too big
VIEW IN TELEGRAM
🪙 Как ускорить приложение с помощью ART Profile (20 мин)

Виртуальная машина ART появилась в 5.0, а затем прошла огромную эволюцию и улучшается каждый релиз ОС. В новом видео рассказываю про то, как прокачали компиляцию кода приложения, что ‼️ ОБЯЗАТЕЛЬНО надо сделать каждому разработчику и покажу как быстро ускорить ваше приложение.

Все видео для платных подписчиков можно найти тут

Если вам нравится что мы всей командой делаем для вас - ваше поддержка деньгами очень для нас важна.

#AndroidBroadcast #Android #AndroidDev #подкапотом
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18🤯6