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

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

РКН 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
👍12🤯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👍726