/// <summary>
        /// 카메라 유무 및 권한, Google Play Service 상태를 확인 후 스케너 사용 가능 여부를 판단합니다.
        /// </summary>
        /// <returns>true : 사용 가능, false : 사용 불가</returns>
        private bool CheckScannerStatus()
        {
            if (!Platform.HasCameraPermission || !Platform.HasCamera || !Platform.IsGmsReady)
            {
                this.Write($"Disabled to use scanner - " +
                           $"Permission : {Platform.HasCameraPermission}, " +
                           $"HasCamera : {Platform.HasCamera}, " +
                           $"IsGmsReady : {Platform.IsGmsReady}");

                ScannerError error = ScannerError.Unknown;
                if (!Platform.HasCameraPermission)
                {
                    error = ScannerError.NoCameraPermission;
                }
                else if (!Platform.HasCamera)
                {
                    error = ScannerError.NoCamera;
                }
                else if (!Platform.IsGmsReady)
                {
                    error = ScannerError.ServiceNotReady;
                }

                Element?.OnError(error);

                return(false);
            }
            else
            {
                return(true);
            }
        }
Пример #2
0
 public void Error(IScanner scanner, ScannerError error)
 {
     Logger.LogError(Message.ScannerManagerError, scanner.SerialNumber, error);
     try
     {
         CloseSheetProcessingSessionWithError((int)error, true);
     }
     catch (Exception ex)
     {
         Logger.LogError(Message.ScannerManagerAlertingErrorError, ex);
     }
 }
Пример #3
0
 /// <summary>
 /// 에러 발생 시 호출되는 콜백 함수입니다.
 /// </summary>
 /// <param name="error">에러 내용</param>
 public virtual void OnError(ScannerError error)
 {
     ErrorOccurred?.Invoke(error);
     ErrorOccuredCommand?.Execute(error);
 }