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

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

РКН https://abdev.by/rkn_tg_ab
Download Telegram
Теперь для всех BroadcastReceiver, регистрируемые в runtime, обязательно должны будут указывать экспортируемые или нет. Для этого при регистрации надо будет указать флаг RECEIVER_EXPORTED или RECEIVER_NOT_EXPORTED. Подробности тут

@android_broadcast #android14
🤔23👎11👍10👌3😁1
В Android 14 обяжут указывать зачем вы используете Foreground Service (подробности тут). Цели использования сервисов строго ограничены списком, а любую другую работы надо выполнять через WorkManager (JobScheduler).

В JobScheduler появляется новая пометка "User Initiated", которая помечает долгую задача, что еще больше ограничивает категории задач для Foreground Service.

Особенности User Initiated Job:
👉 Чтобы их использовать надо будет запросить в AndroidManifest новый permission - RUN_LONG_JOBS
👉 также показать системное уведомление, пока выполняется такая Job
👉 Запущена такая Job может только когда приложение видно пользователю
👉 Такая Job может быть остановлена через системный Task Manager (появился в Android 13).

Пока для такой работы говорится только о передачи данных с/на сервер. Пример как это делается в скриншотах к посту

Все подробности изменения тут

@android_broadcast #android14
🤯35🤬18👍15👎8👌1
В Boosty среди патронов я провожу важные опросы по контенту. Например, сейчас обсуждаем стоит ли делать обзор на Android 13 и в каком формате. Пишите комментарии под постом
👍35👎23😁3
Опыт миграции Sunflower на Jetpack Compose. Все подробности тут

#compose
👍29👎8🥱3😱2
В Android 14 появились новые типы Foreground Service (теперь всего их 13), а именно:
👉 Health - длительные операции для фитнес приложений
👉 Remote messaging - передача сообщений между устройствами
👉 Short service - выполнение короткой (до 1 минуты) задачи критичной для окончания, которая не может быть прервана или отложена. Имеет ряд ограничений
👉 Special use - тип для случая когда все другие вам не подошли. Такие типы service будут проверять при публикации в Google Play
👉 System exempted - зарезервировано для системных приложений и специальных системных интеграций, чтобы они дальше могли работать с Foreground Service

@android_broadcast #android14
👍28👎10😭8🥱2👨‍💻1
В течение следующих нескольких месяцев Google Play будет делиться информацией о политике, ограничивающей когда и какие типы Foreground Service может использовать ваше приложение, особенно если их тип не соответствуют ожиданиям системы.

Вот теперь выполнять работу в фоне придется только по согласованию системой. Кто-то скажет что мы уже пришли в iOS, но еще нет. Там вообще даже с согласованием нет такой возможности, а новое правило заставит разработчиков не использовать фоновые сервисы как вздумается

@android_broadcast #googlelplay #android14
👍20👎14🥱2😁1🤯1
Начиная с Android 14, пользователь сможет увеличить размер шрифта до 200%, ранее максимальный размер был 130% (на устройствах Pixel). Масштабирование текста будет нелинейным. Это приведет к тому что уже большой размер текста не будет увеличен также как маленький. Все это делается в соотвествии с Web Content Accessibility Guidelines (WCAG)

Чтобы корректно расчитывать размер текста из sp в px теперь надо строго использовать TypedValue.applyDimension(), а для обратной конвертации TypedValue.deriveDimension(). Хардкодить расчет перевод больше нельзя!

Подробности тут

@android_broadcast #android14
👍36👎11🥱3😁2
Загружать код динамически в Android 14 можно будет только из файлов (DEX, JAR, APK), которые помечены как "read-only". В противном случае будет выброшена системная ошибка.

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

@android_broadcast #android14
👍26👎8😁4🥱4
Не так давно представленный сервис Health Connect для синхронизации данных между различными фитнес приложениями, теперь является частью системы.

Появилась новая константа Context.HEALTHCONNECT_SERVICE, который вернет HealthConnectManager

#android14
👍24👎11🥱2
Решил в одном месте собрать все лучшие практики по тому как сделать Jetpack Compose быстрым и без тормозов. Смотрите все в доке. Предлагайте свои полезные материалы в комментариях здесь или в доке, а потом все это можно будет организовать в виде полноценной статьи.

#compose #performance
👍89👎105😁5❤‍🔥3🔥2🥱1
Официальный cheat sheet по Jetpack ViewModel API. Версия в PDF тут

#jetpack
😁29👍21👎13🥱6🔥2
Forwarded from Kotlin Multiplatform Broadcast (Кирилл Розов)
7 лет назад вышла первая версия Kotlin, а так и не скажешь как это было давно

Делитесь в комментариях своими историями как вы попробовали Kotlin и как давно это было
🎉11513👎7🤯7👍2😢2🥱2
Вышел Gradle 8.0
👉 Улучшение поддержки Kotlin DSL: скорость, Kotlin 1.8, JVM 11 Bytecode
👉 buildSrc теперь ведет более похоже на included builds
👉 Configuration cache (все еще incubating) стала параллельной на первом билде и больше поддержки базовых плагинов
👉 Прочие незначительные фичи

Помимо этого удалили все что было deprecated, а часть фичей стали стабильными

#gradle
👍23👎9🥱2😁1😐1
This media is not supported in your browser
VIEW IN TELEGRAM
В Android 14 в боевой режим вступает новый жест назад "Predictive Back Gesture". Заявлено о нем было еще в Android 13, но сейчас он станет включен по умолчанию.

Нововведение заключает в том, что при навигации назад будет видно на какой экран вы переходите

Если еще не добавляли его поддержку, то смотрите здесь

@android_broadcast #android14
👍56👎8🥱7😁5❤‍🔥2🤔2
Share Android App Links with the Sharesheet (3 мин)

Разбор того как работать со стандартным Sharesheet для шарнига контента между приложениями в Android. Также показывается как можно подкинуть собственное превью контента

#androidos
👍32👎7
Вышел Lottie Android 6.0.0: пачка новых фичей, улучшений и исправление багов

Я тут как раз ищу эксперта в Lottie, чтобы показать какие крутые вещи и как с ней сделать. Если у тебя есть опыт - пиши мне на почту [email protected]

#animation
👍43👎8🥱2👀2
📺 Интервью с командой Kotlin Multiplatform Mobile (2 часа)
👉 Что произошло за 2022 год
👉 Чего ждать к KMM 1.0 Stable
👉 Compose iOS
👉 Kotlin IDE
👉 Экосистема Kotlin Multiplatform

#AndroidBroadcast #kotlin #kmm
👍53🔥13👎9😱1