Contenu du post
🤖Очередная порция ограничений для Activity в Android 17 Копался в behavior changes для Android 17 и наткнулся на очередное закручивание гаек вокруг запуска Activity из фона. На этот раз Google расширил BAL (Background Activity Launch) ограничения на IntentSender IntentSender - это обёртка над PendingIntent, позволяющая передать право запуска Intent другому приложению или системе. Именно через него работают уведомления, виджеты, shortcuts и межпроцессные вызовы. Так вот, константа MODE_BACKGROUND_ACTIVITY_START_ALLOWED теперь deprecated. Если где-то передаёте её через ActivityOptions при работе с PendingIntent — нужно мигрировать на MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE. Разница в том, что теперь Activity из фона запустится только если вызывающее приложение видимо пользователю. val options = ActivityOptions.makeBasic().apply { pendingIntentBackgroundActivityStartMode = ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE } Найти проблемные места просто — Google обновил lint и StrictMode под новые требования. Запускаете lint, ищете использования MODE_BACKGROUND_ACTIVITY_START_ALLOWED и получаете полный список того, что нужно поправить. Формально это касается только targetSdk 17+, но лучше не тянуть — сами знаете, как работают дедлайны в Play Console. 🔗Источник developer.android.com #Android17#androiddev#security#activity