Android 15 и новее: скрытые уведомления
Почему на Android 15+ часть банковских уведомлений не распознаётся и как вручную разрешить «В Лимите» читать их полностью.
Начиная с Android 15 система скрывает от других приложений текст уведомлений, которые считает «чувствительными», — прежде всего сообщений с кодами подтверждения. Вместо текста приложение получает пустую заглушку.
Определяет такие уведомления алгоритм на телефоне, и он ошибается: под защиту попадают и обычные уведомления о покупках, потому что в них тоже есть суммы и цифры карты. Тогда «В Лимите» не видит ни сумму, ни место покупки и не может записать расход.
Нужно ли вам это
Если покупки записываются — ничего делать не нужно.
Если после оплаты операция не появляется, а в разделе «Автоматический учёт» → «Журнал уведомлений» у этого уведомления стоит «Формат не распознан», текст, скорее всего, скрыла система. Проверить это можно точно:
- В журнале откройте «Диагностика уведомлений» и отметьте приложение банка.
- Сделайте покупку и откройте новую запись в журнале.
- Надпись «Android не передал содержимое уведомления» означает, что текст скрыт. Помогут способы ниже.
Оба способа — по желанию. Они ослабляют защиту, которую добавил Android, только для уведомлений и только на вашем телефоне. «В Лимите» по-прежнему обрабатывает уведомления лишь тех источников, которые вы включили.
Какой способ выбрать
Способ 1. Через настройки Android
Простой способ, работает на многих телефонах. Чувствительные уведомления ищет та же функция, что предлагает быстрые ответы и действия прямо в уведомлении. Если её выключить, текст перестанет скрываться. Вместе с этим пропадут и сами подсказки в уведомлениях.
- Откройте настройки телефона.
- Перейдите в «Уведомления».
- Если нужно, откройте «Дополнительные параметры».
- Выключите «Улучшенные уведомления». На некоторых телефонах пункт называется иначе: на Samsung это «Подсказки действий и ответов для уведомлений».
Если такого пункта нет, покупки всё равно не распознаются или вы не хотите отказываться от подсказок — переходите ко второму способу.
Способ 2. Через ADB
«В Лимите» получает системное разрешение читать чувствительные уведомления. Обычным переключателем его выдать нельзя — понадобится ADB, инструмент для разработчиков.
Результат зависит от производителя телефона, прошивки и системных ограничений: на многих устройствах способ помогает, но гарантировать это для каждой модели нельзя.
Порядок действий: включите режим разработчика, подключитесь к телефону — с компьютера (вариант А) или с самого телефона (вариант Б), — выдайте разрешение и перезагрузите телефон.
Подготовка. Режим разработчика
- Откройте настройки телефона → «О телефоне» (или «Сведения о телефоне», «Об устройстве»).
- Если нужно, откройте «Сведения о ПО».
- Семь раз подряд нажмите на «Номер сборки».
В настройках появится раздел «Для разработчиков» (или «Параметры разработчика»). После настройки его можно снова выключить.
Вариант А. С компьютером
Проще, если компьютер и кабель под рукой.
-
Установите на компьютер Android SDK Platform-Tools — в этот набор входит ADB.
-
На телефоне откройте «Для разработчиков» и включите «Отладка по USB».
-
Подключите телефон кабелем. На телефоне появится запрос «Разрешить отладку по USB?» — согласитесь.
-
Откройте на компьютере терминал (командную строку) в папке с Platform-Tools и проверьте подключение:
adb devices
В списке должен быть ваш телефон с пометкой device. Если написано unauthorized, подтвердите запрос на экране телефона и повторите команду.
На macOS и Linux в этой и следующих командах пишите ./adb вместо adb. Затем переходите к разделу «Выдайте разрешение».
↑ К выбору варианта подключения
Вариант Б. Только с телефона
Понадобится приложение Termux и режим разделённого экрана: Termux и настройки должны быть открыты одновременно. Если разделённого экрана на телефоне нет, установите Termux на второй телефон.
-
Установите Termux — лучше из F-Droid или со страницы проекта на GitHub, там актуальная версия, — и выполните в нём команду. На вопрос о подтверждении ответьте
Y.pkg install android-tools -
Подключите телефон к Wi-Fi. Он нужен, даже если вы используете один телефон.
-
Откройте «Для разработчиков», нажмите на строку «Отладка по Wi-Fi» (на сам текст, не на переключатель) и включите её.
-
Откройте Termux и экран «Отладка по Wi-Fi» в режиме разделённого экрана.
-
Нажмите «Подключить устройство с помощью кода подключения». Не закрывайте появившееся окно: в нём написаны IP-адрес с портом и код.
-
В Termux введите команду, подставив вместо
<IP>:<ПОРТ>адрес и порт из этого окна. Затем введите код из него же.adb pair <IP>:<ПОРТ>Например:
adb pair 192.168.1.5:37123— у вас цифры будут другими. -
Подключитесь. Адрес и порт теперь возьмите с основного экрана «Отладка по Wi-Fi», из строки «IP-адрес и порт». Порт там другой, не тот, что в окне с кодом.
adb connect <IP>:<ПОРТ>Например:
adb connect 192.168.1.5:41817. -
Проверьте подключение — телефон должен быть в списке:
adb devices
Названия пунктов зависят от производителя: «Отладка по Wi-Fi» может называться «Беспроводная отладка». На некоторых телефонах (OnePlus, OPPO, Realme) в разделе «Для разработчиков» дополнительно включите «Отключить мониторинг разрешений», иначе следующая команда завершится ошибкой.
Выдайте разрешение
Выполните команду:
adb shell appops set pm.vlimite.app RECEIVE_SENSITIVE_NOTIFICATIONS allow
Если команда выполнилась без сообщения об ошибке, проверьте результат:
adb shell appops get pm.vlimite.app RECEIVE_SENSITIVE_NOTIFICATIONS
Ответ должен начинаться с RECEIVE_SENSITIVE_NOTIFICATIONS: allow.
Перезагрузите телефон и проверьте
Изменение начнёт действовать только после перезагрузки.
После неё сделайте покупку: операция или черновик должны появиться, а в журнале уведомлений больше не должно быть надписи «Android не передал содержимое уведомления».
Теперь можно выключить отладку и режим разработчика, а Termux или Platform-Tools — удалить. Разрешение сохранится.
Как отменить
Чтобы вернуть «Улучшенные уведомления», включите их обратно в настройках телефона.
Чтобы отозвать разрешение, выданное через ADB, снова подключитесь к телефону и выполните ту же команду со словом ignore вместо allow, затем перезагрузите телефон:
adb shell appops set pm.vlimite.app RECEIVE_SENSITIVE_NOTIFICATIONS ignore
Разрешение также сбрасывается, если удалить «В Лимите» и установить заново. В этом случае настройку придётся повторить.