Android Broadcast – Telegram
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
Спасибо всем за поддержку на Boosty. Достиг 300 патронов. Это очень много значит для меня! Значит. что вы цените что я делаю и поддерживаете меня что я делал это больше и лучше. Спасибо вам ещё раз!!!

#AndroidBroadcast
👍85🎉3315🥱10👎8
Теперь для всех 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