Utilizza l'unità flash del dispositivo su iOS

L'attivazione del flash del dispositivo durante una sessione AR può contribuire a migliorare la visibilità.

Verifica che la configurazione attuale della fotocamera supporti il flash

Non tutte le configurazioni della fotocamera supportano l'attivazione di un'unità flash. Prima di attivare il flash o di offrire agli utenti la possibilità di attivarlo, assicurati che l'unità flash sia disponibile per la configurazione della fotocamera attiva:

AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (device) {
    return device.hasTorch;
}
return false;

Attivare l'unità flash

Attiva l'unità flash configurando la sessione AR con AVCaptureTorchModeOn:

AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (device) {
    if (device.hasTorch) {
        NSError *error = nil;
        if ([device lockForConfiguration:&error]) {
            device.torchMode = AVCaptureTorchModeOn;
            [device unlockForConfiguration];
        } else {
            return;
        }
    }
}

Disattivare il flash

Disattiva l'unità flash configurando la sessione AR con AVCaptureTorchModeOff:

AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (device) {
    if (device.hasTorch) {
        NSError *error = nil;
        if ([device lockForConfiguration:&error]) {
            device.torchMode = AVCaptureTorchModeOff;
            [device unlockForConfiguration];
        } else {
            return;
        }
    }
}