private async Task UpdateView() { loggerService.StartMethod(); var daysOfUse = _userDataRepository.GetDaysOfUse(); PastDate = daysOfUse.ToString(); var statusCodes = await exposureNotificationApiService.GetStatusCodesAsync(); var isStopped = statusCodes.Contains(ExposureNotificationStatus.Code_Android.INACTIVATED) || statusCodes.Contains(ExposureNotificationStatus.Code_Android.FOCUS_LOST) || statusCodes.Contains(ExposureNotificationStatus.Code_iOS.Disabled) || statusCodes.Contains(ExposureNotificationStatus.Code_iOS.Unauthorized) || statusCodes.Contains(ExposureNotificationStatus.Code_Android.BLUETOOTH_DISABLED) || statusCodes.Contains(ExposureNotificationStatus.Code_iOS.BluetoothOff) || statusCodes.Contains(ExposureNotificationStatus.Code_Android.LOCATION_DISABLED); var canConfirmExposure = _userDataRepository.IsCanConfirmExposure(); if (isStopped) { loggerService.Info("isStopped"); IsVisibleENStatusActiveLayout = false; IsVisibleENStatusUnconfirmedLayout = false; IsVisibleENStatusStoppedLayout = true; } else if (!canConfirmExposure) { loggerService.Info("canConfirmExposure is false"); IsVisibleENStatusActiveLayout = false; IsVisibleENStatusUnconfirmedLayout = true; IsVisibleENStatusStoppedLayout = false; var isMaxPerDayExposureDetectionAPILimitReached = _userDataRepository.IsMaxPerDayExposureDetectionAPILimitReached(); EnStatusUnconfirmedDescription1 = isMaxPerDayExposureDetectionAPILimitReached ? AppResources.HomePageExposureDetectionAPILimitReachedDescription1 : AppResources.HomePageENStatusUnconfirmedDescription1; EnStatusUnconfirmedDescription2 = isMaxPerDayExposureDetectionAPILimitReached ? AppResources.HomePageExposureDetectionAPILimitReachedDescription2 : AppResources.HomePageENStatusUnconfirmedDescription2; IsVisibleUnconfirmedTroubleshootingButton = !isMaxPerDayExposureDetectionAPILimitReached; } else { IsVisibleENStatusActiveLayout = true; IsVisibleENStatusUnconfirmedLayout = false; IsVisibleENStatusStoppedLayout = false; var latestUtcDate = _userDataRepository.GetLastConfirmedDate(); if (latestUtcDate == null) { LatestConfirmationDate = AppResources.InProgressText; } else { try { var latestLocalDate = latestUtcDate.Value.ToLocalTime(); LatestConfirmationDate = latestLocalDate.ToString(AppResources.DateTimeFormatToDisplayOnHomePage); } catch (FormatException ex) { loggerService.Exception("Failed to conversion utc date time", ex); } } } IsVisibleLocalNotificationOffWarningLayout = await localNotificationService.IsWarnedLocalNotificationOffAsync(); loggerService.EndMethod(); }