K Kibo Скачать

Почему сторонняя клавиатура исчезает в поле пароля

Стоит нажать на поле пароля — и вместо вашей клавиатуры появляется стандартная. Разбираем, что делает iOS, почему это происходит даже при выключенном полном доступе и почему чинить здесь нечего.

Вы спокойно печатаете своей клавиатурой, нажимаете на поле пароля — и на экране внезапно снова стандартная клавиатура Apple. Переходите в следующее поле, и ваша возвращается. Ничего не сломалось, и вы ничего не переключали по ошибке: так поступает сама iOS, причём со всеми сторонними клавиатурами без исключения, а не только с вашей.

Что происходит на самом деле

Приложение может пометить текстовое поле как защищённое — это те самые поля, где введённое скрывается точками. Когда курсор попадает в такое поле, система резервирует его за собственной клавиатурой и выводит сторонние из очереди. Ваша клавиатура не падает и не блокируется настройкой: её просто не предлагают именно для этого поля. Выходите из поля — и она сразу возвращается, потому что правило привязано к полю, а не к клавиатуре.

Зачем iOS так делает

Это решение о приватности. Сторонняя клавиатура, которой выдан полный доступ, в принципе способна отправить набранное за пределы устройства. Для обычного текста выбор, идти на такой обмен или нет, остаётся за вами. Но пароль — тот момент, где цена ошибки максимальна, и вместо того чтобы полагаться на добросовестность каждой установленной клавиатуры, система убирает саму возможность и передаёт поле своей клавиатуре, которую контролирует от начала до конца.

Срабатывает это на чувствительных полях:

Решение о том, какие из своих полей считать защищёнными, принимает разработчик приложения, поэтому в одних местах вы с этим столкнётесь, а в других нет. Строка поиска не вызывает такого поведения никогда, а вход в банковское приложение — всегда. Поле для одноразового кода из СМС чаще всего защищённым не помечают, и там обычно остаётся ваша клавиатура: это тоже выбор разработчика, а не общее правило.

Это происходит и при выключенном полном доступе

Здесь удивляются как раз те, кто выбирал клавиатуру именно из-за того, что ей не нужен полный доступ. Клавиатура с выключенным переключателем не может ни прочитать буфер обмена, ни тем более куда-то отправить нажатия: разрешение, которое это позволило бы, выключено. Но iOS не разбирает ситуацию по каждому полю отдельно. Защищённое поле — значит системная клавиатура, независимо от того, что конкретная сторонняя клавиатура может или не может. Правило намеренно сделано грубым: правило без исключений проще проверить и легче ему доверять.

Что с этим можно сделать

Ничего, и это честный ответ. В настройках нет переключателя, нет разрешения, которое стоит выдать, и нет клавиатуры, способной вернуться в защищённое поле, — клавиатура, которая могла бы это обойти, обессмыслила бы саму защиту. Хорошая новость в том, что чинить нечего, потому что ничего не сломано: ваша клавиатура возвращается в ту же секунду, как вы выходите из поля.

Если ваша цель была вообще не набирать пароль руками, это другая функция — автозаполнение паролей, при котором система сама предлагает сохранённый пароль над клавиатурой. Она работает с любой клавиатурой, потому что пароль подставляет сама iOS, а не клавиатура его читает. Это отдельный механизм, никак не связанный с описанным выше, и включается он в настройках паролей.

Где встречается то же самое

Похожим образом ведёт себя экран блокировки: ответ на уведомление прямо оттуда часто набирается стандартной клавиатурой, даже если у вас выбрана другая, и по тем же защитным соображениям. Так что клавиатура, которая как будто «пропадает», почти всегда означает, что iOS зарезервировала чувствительное место за своей, а не что с установленным приложением что-то не так.

Как отличить это от настоящей поломки

Короткий вывод

Подмена клавиатуры в поле пароля — не настройка, не сбой и не признак того, что вы выбрали плохую клавиатуру. Это одно из немногих мест, где iOS принимает решение за пользователя и не оставляет способа его переопределить. Относиться к этому стоит спокойно: несколько секунд со стандартной клавиатурой в обмен на то, что ваш пароль гарантированно не проходит через чужой код.

Частые вопросы

Моя клавиатура сломана, если она пропадает в поле пароля?

Нет. iOS резервирует защищённые текстовые поля за системной клавиатурой и выводит из очереди все сторонние без исключения. Ваша клавиатура возвращается в тот момент, когда вы выходите из поля. Это ожидаемое поведение системы, одинаковое для всех клавиатур, а не неисправность конкретного приложения.

Появится ли клавиатура в поле пароля, если включить полный доступ?

Нет. Правило действует для защищённых полей независимо от разрешений клавиатуры, поэтому состояние переключателя «Разрешить полный доступ» здесь ничего не меняет. iOS передаёт такое поле собственной клавиатуре в любом случае, и включать разрешение ради этого бессмысленно. Полный доступ влияет на другие вещи — работу кнопок буфера обмена на панели клавиатуры и её выход в сеть, — но не на поведение системы в поле пароля.

Можно ли заставить свою клавиатуру работать в поле пароля?

Настройки для этого не существует, и обойти правило не может ни одна клавиатура: возможность обхода сводила бы на нет смысл самой защиты. Если вы не хотите набирать пароль вручную, используйте автозаполнение паролей — система предложит сохранённый пароль над любой клавиатурой, которая сейчас на экране.

Почему в поле для кода из СМС клавиатура остаётся моей?

Потому что защищённым такое поле помечают редко: приложение само решает, какие из его полей считать чувствительными. Поле одноразового кода обычно обычное, поэтому смены клавиатуры там не происходит. Разное поведение в разных приложениях объясняется именно этим выбором разработчика, а не настройками вашего телефона.

Попробуйте на своей клавиатуре

Kibo — бесплатная клавиатура для iPhone с настоящим механическим звуком клавиш, набором тем и эффектами RGB-подсветки. Без аккаунта, без рекламы, и работает даже с выключенным полным доступом.

Загрузить в App Store

Похожие руководства

Все руководства