В Android 17 на Pixel уже работают per-app memory limits. Сегодня Google написал, что в течение года их начнут включать всё больше производителей на устройствах от 4 ГБ RAM и больше.
Как это работает на практике:
1. Превысил бюджет → страницы приложения насильно уходят в zRAM (сжатая RAM). CPU-оверхед → jank и тормоза.
2. Приложение продолжает есть много памяти дальше → процесс убивают.
Можно отловить причину это ловится через
ApplicationExitInfo:-
reason == REASON_OTHER-
description содержит "MemoryLimiter:AnonSwap"Можно ещё повесить
TRIGGER_TYPE_ANOMALY в ProfilingManager и автоматически снимать heap dump в момент, когда лимит сработал.Для локального теста поведения можно использовать adb:
adb shell am memory-limiter status
adb shell am memory-limiter manual <pid> <limit_mb>
adb shell am memory-limiter ignore <uid>|all|none
В Android Vitals и Crashlytics 20.1.0 уже есть отдельные сигналы по этим убийствам. Если у тебя в приложении есть тяжёлые экраны, кэши, игры или foreground-сервисы - следи за метриками.
🔗 Источник - блог Android Developers
#Android #AndroidDev #Android17


