Обнаружение нового набора отпечатков пальцев - PullRequest
0 голосов
/ 06 июня 2018

В настоящее время я работаю над реализацией Android Fingerprint https://github.com/googlesamples

и у меня есть вопрос относительно кода по ссылке: https://github.com/googlesamples/android-FingerprintDialog/blob/master/Application/src/main/java/com/example/android/fingerprintdialog/MainActivity.java

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

  1. открывает приложение, ключи создаются mKeyGenerator.generateKey ();
  2. подтверждение отпечатка пальца
  3. сворачивает приложение
  4. откройте настройки и добавьте новый отпечаток
  5. вернитесь в приложение и повторите попытку аутентификации
  6. новое исключение KeyPermanentlyInvalidatedException

Однакоесли точка 3 заменена на «выйти из приложения», и я следую следующим шагам, исключение не выдается по простой причине, что ключи воссозданы.У меня вопрос, как определить, был ли добавлен / удален новый отпечаток пальца между двумя разными средами выполнения?

1 Ответ

0 голосов
/ 06 июня 2018

Переместите связанный код хранилища ключей / менеджера отпечатков пальцев с onCreate на onResume.Вы должны загрузить / проверить вещи снова после возвращения в приложение, и самый простой способ сделать это - переместить их в onResume.При запуске приложения также будет работать onResume (onCreate -> onStart -> onResume), Google для получения дополнительной информации об активности Android.

...