У нас проблема в том, что мы хотим защитить приложение с помощью отпечатка пальца / TouchID / FaceID. Я упомяну здесь только отпечаток пальца, что всегда означает все функции biometri c local_auth. Частично это работает довольно хорошо с функцией "didChangeAppLifecycleState
", но только частично.
Поскольку при iOS приложение становится неактивным во время запроса отпечатка пальца, запрос поступает непрерывно l oop когда запрашивается "AppLifecycleState.resumed
". Поэтому мы устанавливаем временную метку в «AppLifecycleState.pause
» и запрашиваем отпечаток при возобновлении только в том случае, если с момента приостановки приложения прошло x секунд. Теперь мы также установили немного большее время, чтобы блокировка не включалась go сразу, если вам нужно переключиться на камеру из приложения. Конечно, есть и другие проверки, но сейчас это основная идея c.
Вот проблема, которая заключается в том, что флаттер требует некоторого времени для выполнения паузы. Оба iOS и Android. Так что, если вы теперь быстро свернете приложение и снова откроете его (потому что свертывание могло быть случайностью?), Отпечаток пальца будет получен напрямую. Ничего серьезного, но неприятного.
Наша настоящая проблема, которую я не могу понять, поскольку я тоже не знаю, как ее отладить. Если приложение не использовалось в течение длительного времени, особенно в понедельник после выходных, у коллег по работе возникает проблема, заключающаяся в том, что они могут просто запустить приложение без отпечатка пальца. Пока замечено только под iOS, поскольку коллеги используют все iOS, но не исключает, что это может произойти и под Android.
Я просто не знаю, как это исправить. У кого-нибудь был опыт с этим? Или есть ли очень простой способ использовать отпечаток пальца во флаттере , чтобы вы могли открывать приложение только с отпечатком пальца , возможно, в совершенно другом месте, чем "didChangeAppLifecycleState
" ?
С уважением, Якоб