in src/Covi/Features/OnBoarding/OnBoardingViewModel.cs [98:144]
private async Task<bool> ShowBluetoothNotification()
{
bool accepted = false;
string errorMessage = string.Empty;
try
{
var result = await InitBluetoothAsync();
switch (result.PermissionStatus)
{
case Xamarin.Essentials.PermissionStatus.Disabled:
await _notificationManager.ShowNotificationAsync(
Localization.BluetoothNotification_Error_Title,
Localization.BluetoothNotification_Disabled_ErrorText,
Localization.ErrorDialog_Accept);
break;
case Xamarin.Essentials.PermissionStatus.Denied:
await _notificationManager.ShowNotificationAsync(
Localization.BluetoothNotification_Error_Title,
Localization.BluetoothNotification_Denied_ErrorText,
Localization.ErrorDialog_Accept);
break;
case Xamarin.Essentials.PermissionStatus.Granted:
accepted = true;
break;
}
if (accepted)
{
await _tracingEngine.StartAsync();
}
}
catch (Exception ex)
{
errorMessage = ex.Message;
}
if (!string.IsNullOrEmpty(errorMessage))
{
await _notificationManager.ShowNotificationAsync(
Localization.BluetoothNotification_Error_Title,
errorMessage,
Localization.ErrorDialog_Accept);
accepted = false;
}
return accepted;
}