Приложение как сервис автозаполнения

Пробовал flutter_autofill_service, authpass/autofill_service
Но ничего не получается.
В первом варианте не понятно как запускается autofillEntryPoint рядом с main.
Во втором не совместим с flutter_secure_storage (API Версии).
Build Log с API версией меньше 32: Pastebin
С 32 Версией: https://pastebin.com/jvym7M99

В гугле никакой информации по реализации. Только "как показать сервису автозаполнения, какие данные нужны в TextField" (как пример).

Как это реализовывается?


Ответы (1 шт):

Автор решения: MiT

Во 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 может не работать на эмуляторах или симуляторах так же, как на реальных устройствах.
→ Ссылка