Есть ли способ во флаттере дождаться ввода отпечатка пальца

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

Мой вопрос в основном заключается в том, могу ли я постоянно ждать активации датчика отпечатков пальцев, а затем автоматически переключать страницы без каких-либо дополнительных действий.

Изменить: Если возможно, было бы здорово, если бы мне не понадобилось всплывающее окно. Теперь я вызываю отпечаток пальца

try {
  didAuthenticate = await _localAuthentication.authenticateWithBiometrics(
      localizedReason: 'Please authenticate to show account balance',
      useErrorDialogs: false);
} catch (e) {
  print(e);
}
if (!mounted) return;
if (didAuthenticate = true) {
  Navigator.pushReplacement(
    context,
    MaterialPageRoute(builder: (context) => MenuAppPage()),
  );
}

На https://pub.dev/packages/local_auth я не нашел другого способа сделать это , так что если у кого-то есть подсказки, было бы здорово


person Maritn Ge    schedule 20.11.2019    source источник


Ответы (1)


У вас есть два варианта: 1. Вызвать LocalAuth или Touch_Method в init (). 2. Вы можете использовать функцию таймера для вызова функции LocalAuth.

person amit    schedule 20.11.2019
comment
Я попробовал это в initState, и он работает отлично, единственная проблема, которую я все еще забыл добавить ранее, заключалась в том, что я понятия не имею, как это сделать без всплывающего окна или возможно ли это. Но пока спасибо! - person Maritn Ge; 20.11.2019