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 Studio Narwhal Feature Drop 2025.1.2

Как чаще не выпускай релизы, багфикс релизы всё равно остаются 😞

#androidstudio
Please open Telegram to view this post
VIEW IN TELEGRAM
👍321
🤖 Scrcpy-GUI - приложения для Windows чтобы управлять Android устройством на основе scrcpy

scrcpy - позволяет зеркалировать экран устройства, управлять им. Можно и без показ экрана делать записи и скриншоты. Тулза очень полезная


До того как функционал зеркалирования появился в Android Studio scrcpy активно использовал для запуска приложения на устройстве, а управлением с компа. Или когда демо проводил.

#android
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍198
This media is not supported in your browser
VIEW IN TELEGRAM
🤖 Как использовать Compose, чтобы сделать анимированный Splash Screen

Разработчик создал библиотеку androidx-splashscreen-compose (не от Google решение), которая позволяет делать красивую анимацию как на анимашке.

Подробный разбор и реализация есть в статье (EN,6м, альт. ссылка) или 🐱 исходниках на GitHub

#android #compose
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥51👍7🤔2
// Пример использования Splash Screen Compose
class MainActivity : ComponentActivity() {

private var splashScreen: SplashScreenDecorator? = null

override fun onCreate(savedInstanceState: Bundle?) {
// Инициализация до super.onCreate()
splashScreen = splash {
content {
HeartBeatAnimation(
isVisible = isVisible.value,
exitAnimationDuration = exitAnimationDuration.milliseconds,
onStartExitAnimation = { startExitAnimation() }
)
}
}

// Стартуйте ваш Splash Screen
splashScreen?.shouldKeepOnScreen = false

super.onCreate(savedInstanceState)

setContent {
MyAppTheme {
MainScreen()
}
}
}

override fun onStart() {
super.onStart()
splashScreen?.dismiss()
}
🤔36👍9🤯31
🤖 Вышла первая Beta второго квартального обновления Android 16

С релиза Android 16 Google перешла на новый цикл обновлений Android - раз в квартал. Нас ждут новые фичи и API для разработчиков

Чтобы проверить наличие SDK надо использовать новый способ проверки
// Проверяем версию API через новое API для проверки версии SDK
if (Build.VERSION.SDK_INT_FULL >= Build.VERSION_CODES_FULL.BAKLAVA_1)


Что нового:
👉 Принудительный перевод светлых приложений в темные. Делается инверсия цветов
👉 Система будет делать иконки приложений автоматически тематически (монохромная версия, покрашенная в цвета системы)
👉 Приложения смогут переопределить системный UI шаринга, чтобы оставаться интерактивными
👉 Добавили возможность реализации переноса данных между Android и iOS версий приложения
👉 PDF в Android SDK теперь поддерживает редактирование и аннотации. На основе этого API будет работать Jetpack PDF библиотека
👉 Display Topology API - новое API для получения информации при работе с несколькими экранами о их положении - границы и относительное размещение.
👉 Тайлы в быстрых настройках теперь должны относится к одной из стандартных категорий
👉 Больше возможностей для управления Haptic Feedback
👉 Много новых Media API (подробности отдельным постом)
👉 Улучшения управлением компаньон устройств (подробности отдельным постом)
👉 Улучшение безопасности и приватности (подробности отдельным постом)
👉 Улучшения API для разработчиков (подробности отдельным постом)

Релиз стабильной версии ожидается в 4 квартале (ориентировочно ноябрь 2025). Уже доступа первая Beta версия для Google Pixel. Подробнее про изменения читайте на сайте Android Developers

#android16
Please open Telegram to view this post
VIEW IN TELEGRAM
👍217🔥6🤯1
🤯 Google придумала новый способ давления на разработчиков

Теперь если в приложении не добавили тёмную тему, то пользователь сам принудительно сделает её включение через системные настройки. Это приведёт к инверсии цветов.

Наконец-то Google поняла что разработчики иногда забивают на тёмную тему, обязать их не получается (ну почему через Google Play не обязать?).

Видно так решила Google:
Будем форсировать фичи и пусть пользователи жалуются и занижают рейтинг приложения в магазине


Странно, что на рекламной графике использовали приложение FitBit, хотя в нем есть нативная темная тема, да и сам продукт принадлежит Google.
В FitBit нет тёмной темы. Да и не удивился - худшее спортивное приложение, что я использовал 😞

#android16
🤔38👍20🤯74🔥3
🤖 Обязательная поддержка 64-bit приходит в Android TV

1 августа 2026 года все приложения для Android TV и Google TV, публикующиеся в Google Play, обязаны будут поддерживать arm64 в нативных библиотеках.

Также для приложений с targetSdk 35+ (Android 15 и новее) должны будут поддержать страницы памяти размером 16 Кб

Как мне кажется, логичное изменение. Приложения для смартфонов уже несколько лет как выполняют аналогичное требование, поэтому все популярные приложения, скорее всего, уже выполняют новые правила.

#android #androidtv #googleplay #ndk
Please open Telegram to view this post
VIEW IN TELEGRAM
👍195🤔2🤯1
🤯 Как проверить, что ваше приложение поддерживает 16 Kb memory page size

Совсем скоро всем Android приложениям в Google Play надо будет выполнить требования поддержки нового размера страницы памяти, что касается нативного когда (написанного на C/C++ с использованием Android NDK).

Стандартный способ проверки - через APK Analyzer в Android Studio, но вот по сообщениям в закрытом чате Broadcast с опытными ребятами, получается, что не всегда этот способ проверки даёт верный результат.

Какие способ использовать
1️⃣ Проверка APK с помощью специального скрипта check_elf_alignment.sh (подробности тут)
2️⃣ Запустить приложения на эмуляторе, где поддерживается только новый размер страницы
3️⃣ Через Dev Options на устройстве принудительно включить новый размер страницы. Лучше использовать устройство на Android 16+
4️⃣ Загрузить сборку в Google Play и там даст правильный ответ (можно использовать Alpha или Internal тестирование)

Подробнее про изменение, требования и миграцию читайте в оф. документации

#android #googleplay #ndk
Please open Telegram to view this post
VIEW IN TELEGRAM
👍295🔥4🤯3🙏3
🤖 Почему ProGuard хорош, но не для Android

Решил сравнить результаты оптимизаций кода R8 с ProGuard. Не смог. Самый свежий ProGuard Gradle плагин не поддерживает Android Gradle Plugin выше 8.0 (вышел в апреле 2023) и новее. Ставлю, что платная версия DexGuard будет работать 😁

#android #безопасность #оптимищация #r8 #proguard
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯28🤔9👍3🆒3
Media is too big
VIEW IN TELEGRAM
Вот так рабоnает принудительный режим темной темы в Android 16 QRP 2

Google Maps имеют свою тёмную тему, но в настройках приложения я поставил принудительно только светлую тему. Расширенный темный режим не берет ресурсы для темной темы, а инвертирует светлую.

#android #android16
👍53🔥53🤯3
Принудительные монохромные иконки в действии. ChatGPT у меня установлен как PWA и пока их автоматический монохром не задевает, вот Shortcut приложений перекрасился

#android #android16
👍30🔥8🤔21🤯1
Media is too big
VIEW IN TELEGRAM
🤖 Пример работы расширенной темной темы с Compose приложением. Тут придется темную делать сам, так как настройка не повлияла

#android16 #android #androiddev
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔15👍9🏆3🤯2
🤯 ОФИЦИАЛЬНО На Android запускаются графические Linux приложений

В Android 16 QRP2 Beta 1 уже можно запустить графические Linux приложения. На скриншоте - Visual Studio Code для Debian.

Объединение технологий ChromeOS и Android дают свои результаты и идёт расширение возможностей. Дальше - вся ваша Steam библиотека будет доступна через Proton (как в SteamDeck) 🔥🔥🔥

Источник - Mishaal Android News

#android16 #linux
🔥129🤯237👍4
🤯 Предупреждение об отсутствии поддержки страницы памяти в 16 Kb

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

Пользователи ничего не увидят, потому что им уходят релизные сборки. Так ведь у вас?

#android16 #ndk
👍44🤯274
‼️ На Android усложняют установку приложений не из Google Play

Google объявила, что с 2026 года все Android сертифицированные устройства (если по простому - устройства, где официально стоит Google Play) будут работать с приложениями, опубликованными только авторизованными разработчиками 🤯 Все разработчики, которые публикуют приложения через Google Play уже автоматом проходят верификацию.

Если вы распространяете приложения за пределами Google Play, то сможете пройти верификацию в новой Android Developer Console, которая станет доступна в скором времени (презентацию с обзором ищите в комментариях под постом). Для получения доступа надо подать заявку на ранний доступ

Google делает важный акцент на заявление:
У разработчиков останется текущий уровень свободы в распространении их приложений для пользовтаелей через установку приложений из разных источников или использовать любые магазины приложений


План внедрения изменений:
1️⃣ В октябре 2025 будут отправлены первые приглашения для раннего доступа
2️⃣ В марте 2026 откроются для всех разработчиков
3️⃣ В сентябре 2026 начнут применятся в первых регионах, начиная с Бразилии, Индонезии, Сингапура, Тайланда.
4️⃣ Начиная с 2027 года, требование будет распространяться на другие регионы по всему миру

Ну что сказать, Google начинает активнее бороться с перепаковкой приложений, распространением из неизвестных источник. Первые регионы распространения выбраны, потому что там зарегистрирован всплеск мошеннических приложений и местные органы регуляции поддерживают инициативу. Это решение реальной проблемы с наличием возможности установки не только из официального магазина.

Моё мнение - изменение правильное и полезное, затронет только недобросовестных разработчиков, но и дает Google возможность давления на разработчиков так как критерии верификации могут меняться или её вовсе смогут отозвать. Также это важно в мире, когда монополии магазинов приложений падает, а корпорации надо сохранять контроль

💬 Что думаешь касательно нового требования Google Play? Делись в комментариях

#android #googleplay #безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔40🤯39👍134🆒1
Ваш ребёнок играет в игры? А может — будет их создавать! 🎮

GeekBrains помогает детям от 8 до 15 лет превратить интерес к технологиям в реальные навыки будущего:
— геймдизайн и 3D-моделирование
— веб-дизайн и анимация
— программирование в Scratch, Roblox и Minecraft
— основы кибербезопасности и Python
— создание собственного сайта

💡 Ребёнок учится, развивает мышление и получает первый опыт в IT — то, что пригодится в любой профессии.

🎁 Летнее предложение (до 31 августа):
✔️ Скидка 30%
✔️ Английский на год в подарок

И главное — бесплатное пробное занятие: специалисты помогут выявить сильные стороны и подобрать подходящее направление.

👉 Запишите ребёнка на бесплатный урок уже сегодня

#реклама
🤯8👍2🙏1🤝1
🤖 Вышла свежая версия Robolectric с поддержкой Android 16

Новая версия фреймворка для тестирования Android приложения на JVM теперь поддерживает свежую версию Android, а также убрали поддержку Android 5.0 и 5.1 (API Level 21 и 22).

🔥 Новая крутая фича - нативные ресурсы
Под капотом Robolectric начинает прокидывать нативные asset-id в C/C++-код фреймворка (вместо Java-эмуляции). Работает пока только на Android 16

Зачем это разработчиками? Большая точность разрешения ресурсов: aapt2-сгенерированные таблицы читаются так же, как на Android устройстве/эмуляторе. Меньше расхождений между JVM-тестом и устройством.

Включить можно глобально для всех тестов в Gradle
test {
systemProperty += ["robolectric.resourcesMode", "NATIVE"]
systemProperty += ["robolectric.enabledSdks", "36"]
}

или для отдельного теста:
import org.robolectric.annotation.ResourcesMode

@Config(sdk = [36])
@ResourcesMode(ResourcesMode.Mode.NATIVE)
class MyTest { /* ... */ }


#android16 #тестирование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍241