Cайт программиста Ruby, веб-разработчика Ruby on Rails ESV Corp. Екатеринбург, Москва, Санкт-Петербург, Новосибирск, Первоуральск

Приложение полезло в контакты? Android покажет «фигу» и отправит за разрешениями

Приложениям на Android запретят незаметно переписывать телефонную книгу через привычное разрешение. Google объявила о новых правилах работы с контактами, которые заработают в выпуске системы 2027 года. Программы, рассчитанные на новую версию Android, лишатся возможности напрямую добавлять и менять записи по разрешению WRITE_CONTACTS.

Сейчас WRITE_CONTACTS позволяет сохранять отдельный номер и менять множество записей в фоновом режиме без участия владельца смартфона. Даже сканер визиток или сервис доставки может запрашивать широкий доступ ради одного действия. Google заменит такую схему системными формами, где пользователь сам подтверждает добавление или изменение контакта.

Для создания записей разработчики смогут вызывать ACTION_INSERT, для редактирования ACTION_EDIT, а для выбора между новым и существующим контактом ACTION_INSERT_OR_EDIT. Android откроет стандартное окно с подготовленными полями, а приложение не получит прямого права записи. Форму можно будет развернуть на весь экран, проверить номер, имя и другие сведения перед сохранением.

Google унифицирует поведение редактора на устройствах разных производителей. Раньше системные формы иногда теряли переданные фотографии или сохраняли контакт при нажатии кнопки «Назад». Новая версия позволит передавать фотографию через EXTRA_PHOTO_URI и предлагать аккаунт для сохранения. Производители сохранят оформление интерфейса, но должны будут соблюдать единые правила.

Для программ, которым нужна только информация об отдельных людях, уже предусмотрен выбор контактов через Contact Picker в Android 17. Системное окно позволяет передать выбранные номера или адреса вместо доступа ко всей книге. Новая политика касается другой операции: записи и редактирования, поэтому не отменяет само разрешение READ_CONTACTS для приложений с обоснованной потребностью в чтении.

Исключение предусмотрено для программ, которым нужно управлять адресной книгой без постоянных подтверждений. Разрешение MANAGE_CONTACTS смогут применять менеджеры контактов, системы корпоративной синхронизации и средства резервного копирования. Пользователь будет включать особый доступ в настройках Android, а разработчику потребуется обосновать необходимость в Google Play.

Новый MANAGE_CONTACTS появится уже в Android 17 QPR2 до конца 2026 года, тогда как ограничение WRITE_CONTACTS запланировано на 2027 год. Попытки прямой записи без особого доступа в приложениях, ориентированных на новую версию системы, приведут к отказу или ошибке SecurityException. Программы, рассчитанные на старые версии Android, пока сохранят прежнее поведение.

Механизм People Directory позволит мессенджерам и приложениям для звонков добавлять способы связи в системный справочник без изменения личных карточек. Принцип раздельного доступа к выбранным контактам уже действует в Android 17, а новый порядок записи должен закрыть ещё один путь к массовым изменениям телефонной книги без явного подтверждения.

SecurityLab