Я использую новый BiometricPrompt в своем приложении для Android из литературного ниже
implementation 'androidx.biometric:biometric:1.0.0-rc01'
Я могу успешно показать BiometicPrompt при загрузке действия.
Моя проблема, если ясохраняйте значение параметра «Подсказка» в течение 30–60 секунд, или если я переключу приложение в фоновый режим, или если я заблокирую и разблокирую экран, когда отображается подсказка, когда приложение снова появляется, BiometricPrompt закрывается или не отображается. Я не могу определить, связана ли проблема с моим исполнителем, пожалуйста, помогите. Ниже мой код
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
Executor executor = Executors.newFixedThreadPool(2);
final BiometricPrompt biometricPrompt = new BiometricPrompt(this,
executor, new BiometricPrompt.AuthenticationCallback() {
@Override
public void onAuthenticationError(int errorCode, @NonNull CharSequence errString) {
super.onAuthenticationError(errorCode, errString);
}
@Override
public void onAuthenticationSucceeded(@NonNull BiometricPrompt.AuthenticationResult result) {
super.onAuthenticationSucceeded(result);
navigateHome();
}
@Override
public void onAuthenticationFailed() {
super.onAuthenticationFailed();
}
});
final BiometricPrompt.PromptInfo promptInfo = new BiometricPrompt.PromptInfo.Builder()
.setTitle("Authenticate")
.setSubtitle("Unlock with your fingerprint")
.setNegativeButtonText("Cancel")
.build();
biometricPrompt.authenticate(promptInfo);
}