2014-07-09 13 views
14

La mia applicazione utilizza la fotocamera. In iOS8 includono una nuova impostazione di privacy, Camera, in cui l'utente può gestire l'utilizzo di diritti di videocamera per ogni applicazione. .Come sapere che l'applicazione ha accesso alla telecamera o non programmaticamente in iOS8

Problema:
Se l'utente non ha permesso la mia domanda di utilizzo della fotocamera, allora come faccio a sapere che La mia applicazione non ha accesso per la macchina fotografica.
come posso usare ALAssetsLibrary authorizationStatus per scoprire lo stato della fotolibreria o ABAddressBookGetAuthorizationStatus per conoscere lo stato della rubrica della rubrica.

Domanda:
Come faccio a sapere se la mia applicazione ha accesso fotocamera o non in iOS 8, in modo che io possa richiedere all'utente per consentire l'accesso della macchina fotografica per la mia applicazione?


devo sotto schermata di stampa di cabina di foto che avendo lo stesso problema come la mia domanda ha.

enter image description here

enter image description here

enter image description here


Quando non c'è l'accesso alla telecamera sarà solo mostrare la schermata nera alcun messaggio niente.

risposta

24

Verificare AVAuthorizationStatus la disponibilità della fotocamera e quindi gestire i casi di conseguenza

AVAuthorizationStatus status = [AVCaptureDevice authorizationStatusForMediaType:AVMediaTypeVideo]; 
if(status == AVAuthorizationStatusAuthorized) { 
    // authorized 
} else if(status == AVAuthorizationStatusDenied){ 
    // denied 
} else if(status == AVAuthorizationStatusRestricted){ 
    // restricted 
} else if(status == AVAuthorizationStatusNotDetermined){ 
    // not determined 
    [AVCaptureDevice requestAccessForMediaType:AVMediaTypeVideo completionHandler:^(BOOL granted) { 
    if(granted){ 
    NSLog(@"Granted access"); 
} else { 
    NSLog(@"Not granted access"); 
} 
    }]; 
} 
+0

Fa questo lavoro per l'utilizzo della fotocamera per scattare foto troppo o semplicemente i video? Sul sito dello sviluppatore, ha detto qualcosa su questo metodo sollevando un'eccezione se si tenta di fare qualcosa di diverso da registrare audio/video? – Supertecnoboff

+0

dove hai aggiunto quel codice? – pableiros