Приложение как сервис автозаполнения
Пробовал flutter_autofill_service, authpass/autofill_service
Но ничего не получается.
В первом варианте не понятно как запускается autofillEntryPoint рядом с main.
Во втором не совместим с flutter_secure_storage (API Версии).
Build Log с API версией меньше 32: Pastebin
С 32 Версией: https://pastebin.com/jvym7M99
В гугле никакой информации по реализации. Только "как показать сервису автозаполнения, какие данные нужны в TextField" (как пример).
Как это реализовывается?
Ответы (1 шт):
Во Flutter включение autofill происходит с помощью виджета AutofillGroup и свойства autofillHints у текстовых полей (например, TextField или TextFormField).
AutofillGroup — это виджет, который группирует несколько текстовых полей, относящихся к одной сущности (например, форме регистрации или платёжной информации). Это позволяет операционной системе правильно понимать контекст и предлагать соответствующие данные для автозаполнения.
AutofillGroup(
child: Column(
children: [
TextFormField(
autofillHints: [AutofillHints.name],
decoration: InputDecoration(labelText: 'Полное имя'),
),
TextFormField(
autofillHints: [AutofillHints.email],
decoration: InputDecoration(labelText: 'Email'),
),
TextFormField(
autofillHints: [AutofillHints.telephoneNumber],
decoration: InputDecoration(labelText: 'Номер телефона'),
),
],
),
)
Свойство autofillHints у текстовых полей принимает список строк, которые представляют собой подсказки для операционной системы о том, какой тип данных ожидается в этом поле.
Autofill работает по-разному на разных платформах (Android и iOS). На Android autofill обычно интегрирован с сервисами Google, а на iOS — с iCloud Keychain.
Важно:
- Убедитесь, что пользователь включил autofill в настройках своего устройства.
- Autofill может не работать на эмуляторах или симуляторах так же, как на реальных устройствах.