public async void OnFinished(SpassFingerprintStatus status)
        {
            //_completedSource = new TaskCompletionSource<int>();
            var resultStatus = GetResultStatus(status);

            if (resultStatus == FingerprintAuthenticationResultStatus.Failed && _retriesLeft > 0)
            {
                _failedListener?.OnFailedTry();

                if (_retriesLeft > 0)
                {
                    _retriesLeft--;

                    //await _completedSource.Task;

                    if (await StartIdentify())
                    {
                        return;
                    }
                }
            }
            else if (resultStatus == FingerprintAuthenticationResultStatus.Failed && _retriesLeft <= 0)
            {
                resultStatus = FingerprintAuthenticationResultStatus.TooManyAttempts;
            }

            _taskCompletionSource.TrySetResult(new FingerprintAuthenticationResult
            {
                Status = resultStatus
            });
        }
 public override void OnAuthenticationFailed()
 {
     base.OnAuthenticationFailed();
     _listener?.OnFailedTry();
 }