Avvisa quando manca il permesso della fotocamera
Con il permesso negato "Aggiungi una foto" non faceva nulla: il servizio restituiva null come per un annullamento. Dopo un rifiuto definitivo Android non ripropone la richiesta, quindi il rilevatore restava bloccato senza capire perche'. - AttachedService: la richiesta dei permessi diventa RequestCameraPermissions, usata anche da SelectImageFromCamera; OpenAppSettings apre le impostazioni dell'app. - ModalFormScheda e ModalAddAttached: chiedono i permessi prima di scattare e, se negati, mostrano un avviso con l'azione "Impostazioni". Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
7e1492d118
commit
885b3cc6b6
4 files changed
+51
-2
No files matched your search
@@ -10,12 +10,19 @@ public class AttachedService(ILogger<FileManager> logger) : IAttachedService
|
||||
{
|
||||
public bool IsCameraAvailable => MediaPicker.Default.IsCaptureSupported;
|
||||
|
||||
public async Task<AttachedDto?> SelectImageFromCamera()
|
||||
public async Task<bool> RequestCameraPermissions()
|
||||
{
|
||||
var cameraPerm = await Permissions.RequestAsync<Permissions.Camera>();
|
||||
var storagePerm = await Permissions.RequestAsync<Permissions.StorageWrite>();
|
||||
|
||||
if (cameraPerm != PermissionStatus.Granted || storagePerm != PermissionStatus.Granted)
|
||||
return cameraPerm == PermissionStatus.Granted && storagePerm == PermissionStatus.Granted;
|
||||
}
|
||||
|
||||
public void OpenAppSettings() => AppInfo.Current.ShowSettingsUI();
|
||||
|
||||
public async Task<AttachedDto?> SelectImageFromCamera()
|
||||
{
|
||||
if (!await RequestCameraPermissions())
|
||||
return null;
|
||||
|
||||
FileResult? result;
|
||||
|
||||
Reference in new issue
Block a user