public override void OnAuthenticationError(int errMsgId, ICharSequence errString)
            {
                bool   reportError = (errMsgId == (int)FingerprintState.ErrorCanceled);
                string debugMsg    = $"OnAuthenticationError: {errMsgId}:`{errString}`.";

                if (reportError)
                {
                    debugMsg += (errMsgId, errString.ToString());
                    debugMsg += " Reporting the error.";
                }
                else
                {
                    debugMsg += " Ignoring the error.";
                }

                Console.WriteLine(debugMsg);
                if (_tcsWeak.TryGetTarget(out var tcs))
                {
                    tcs.TrySetResult(new AuthenticationResult(false, debugMsg));
                }

                _cancellationSignal?.Cancel();
                _cancellationSignal?.Dispose();
                _cancellationSignal = null;

                _dialog.Dismiss();
            }