Android Broadcast
14.5K subscribers
3.83K photos
397 videos
11 files
6.3K links
Подборка новостей и статей для Android разработчиков.

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

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
🔨 Android Studio позволит отключить синхронизацию проекта при открытии 🎉

#androidstudio
Please open Telegram to view this post
VIEW IN TELEGRAM
🔨 В Android Studio Narwhal Feature Drop в Layout Inspector появится счетчик дочерних (Child) рекомпозиций

#androidstudio #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔨 Play Policy Insights теперь можно будет посмотреть напрямую из Android Studio. Теперь все политики и рекомендации Google Play, которые касаются вашего приложения, будут показываться вам прямо в IDE.

Также можно будет запустить анализ проекта на основе Play Policy из раздела "Code"

Полностью все политики можно изучить в Play Policy Center

#androidstudio #googleplay #android
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🦢 Swift от Apple будет иметь интероп с Java

Язык от Apple развивается с поддержкой других платформ. Можно попробовать ранний прототип интерорпа в обе стороны для работы с Java.

Язык постепенно ступает на территорию Kotlin. Про аналог мультиплафтормы конечно не говорится пока, но чем чёрт не щутит

#swift #java
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 Android 16 вышел официально!!!

Что нового
👉 Новый график релиза версий Android
👉 Обязательный Edge-to-edge
👉 Live Updates уведомления
👉 Все приложения принудительно растягиваются на больших экранах
👉 Лучшая производительность и время жизни батареи

Обзор всех изменений можно найти в канале по тегу #android16 (кликайте на сам тег)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from AvitoTech
Официально: Android 16 только что вышел🤖
И мы уже разобрали его самые интересные фичи

Все они уже в новом выпуске AviCast! В нём Кирилл Розов, ведущий Android Broadcast, и Денис Стародубов, Android-инженер нашей команды Mobile Architecture, обсудили:
☑️ текущие обновления;
☑️ потенциальные ограничения для разработчиков и пользователей;
☑️ сходства и различия Android и iOS между собой.

Смотрим тут
⬇️

📺 YouTube
🔵 ВК Видео
💻 RuTube

#mobile_android
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
📹 Как ускоряют Android-приложения в Яндексе: интервью с инженером (1ч)

В этом выпуске мы говорим с инженером по производительности из команды Яндекс Go: обсуждаем, как замеряют и оптимизируют работу Android-приложений, какие инструменты используют, и насколько важна низкоуровневая оптимизация на современных устройствах.

👨‍💻 Эксперт - Вадим Мезенцев, Android разработчик в Яндекс GO
Занимается платформенными задачами в мобильной разработкe. Некоторые из направлений: улучшение производительности приложений, CI/CD, архитектура, работа с сетью

📹 VK Video
📺 RuTube

#AndroidBroadcast #интервью #производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
Google обязует всех поддерживать Edge-to-edge в приложениях, при это системный UI для разработчиков такой 🫣 Ну а чё... стерпят

#android #android16
🤖 Из WearOS убирают поддержку циферблатов на основе AndroidX / Wearable Support Library (WSL)

Как часть улучшения качества работы WearOS компания отказывается от использования старых инструментов для создания циферблатов и переходит на Watch Face Format (уже скоро будет версия 4) - декларативный XML формат без написания кода для создания циферблатов 🤯

Все изменения вступают с 14 января 2026, а именно:
‼️ Пользователи не смогут установить циферблаты старых форматов. Те что уже были установлены, продолжат работать.
‼️ Разработчики циферблатов должны мигрировать на WFF
🪙 Для циферблатов старого формата отключат всю монетизацию
‼️ Если использовали Watch Face Studio для создания циферблата, тогда вам надо повторно отправить их в Google Play с использованием версии 1.8.7 и выше
⚰️ Публиковать циферблаты старого формата уже нельзя с 27 января 2025, только обновлять те что опубликовали ранее

Подробнее про новый формат циферблатов в официальной документации

#android #wearos #googleplay
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Впервые за свой опыт использования Android столкнулся, что приложение требовало отключить USB Debugging в настройках. Приложение для покупки проходок в бизнес залы аэропорта.

Знаю что есть проверки на root и эмуляторы, но вот на USB Debugging впервые 🤯

Кто знает зачем такое требование? От чего происходит защита?

#android #безопасность
Media is too big
VIEW IN TELEGRAM
📹 Jetpack Navigation 3 Core Concepts (EN,11м)

Рассказ про основные принципы новой навигации от Google для Compose - Jetpack Navigation 3

0:00 Вступление
1:05 Что есть Навигация
2:08 Архитектура
4:40 Требования
5:26 Почему это так сложно
7:01 Задачи Navigation 3
9:02 Владение Backstack-ом
10:04 Будущее

#android #jetpack #compose #навигация
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 Уверен что правильно работаешь с логами?

Разработчик решил оценить влияние логирования на работу приложения и описал в статье. Проблема только если создаете лишние объекты

#android #производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
‼️ Что надо сделать? Не создавайте сообщения до того, как действительно убедитесь, что включено логирование и откладывать работу для на попозже (совет хорошо для всего). Например
fun logD(tag: String, messageBuilder: () -> String) {
if (loggingEnabled) {
Log.d(tag, messageBuilder())
}
}


но автор еще не учел проверку уровня логирования:
fun logD(tag: String, messageBuilder: () -> String) {
if (loggingEnabled && Log.isLoggable(tag, Log.DEBUG)) {
Log.d(tag, messageBuilder())
}
}


или прийти к более общей функции
inline fun log(tag: String, level: Int, messageBuilder: () -> String) {
if (loggingEnabled && Log.isLoggable(tag, level)) {
when (level) {
Log.VERBOSE -> Log.v(tag, messageBuilder())
Log.DEBUG -> Log.d(tag, messageBuilder())
Log.INFO -> Log.i(tag, messageBuilder())
Log.WARN -> Log.w(tag, messageBuilder())
Log.ERROR -> Log.e(tag, messageBuilder())
else -> Log.d(tag, messageBuilder()) // fallback
}
}
}


#android #производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 Как удалить отладочный код в релизных сборках на примере логов

Еще одна рекомендация - используйте минификацию кода через R8/ProGuard чтобы удалить весь код логирования. Ничего лишнего не уйдёт в логи, а также повысите скорость работы

Добавьте в правила следующие инструкции
# Удаляем Log.v()
-assumenosideeffects class android.util.Log {
public static int v(...);
}

# Удаляем Log.d()
-assumenosideeffects class android.util.Log {
public static int d(...);
}

# Удаляем Log.i()
-assumenosideeffects class android.util.Log {
public static int i(...);
}


Подробнее про инструкцию assumenosideeffects читайте в документации

#android #proguard #r8 #оптимизация
Please open Telegram to view this post
VIEW IN TELEGRAM
🤖 В Android 16 появится поддержка десктопного режима на внешних дисплеях

В Android 16 QRP1 появилась поддержка десктопного режима при подключении внешних дисплеях. Включается режим плавающих окон, а значит приложения смогут иметь произвольный размер, управление перейдет в мышку и клавиатуру (а смысл иначе от внешнего дисплея?)

Совсем уже не новинка в мире Android, но какому количеству людей это будет необходимо? Делитесь своим мнением в комментариях

#android #android16 #desktop
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Используете подход Documentation-as-Code ? (не про документация в коде)
Anonymous Poll
13%
Да
14%
Нет
58%
Что это?
7%
Не пишу документацию вокруг проекта
1%
Другой вариант
7%
Не участвую в опросе