我有一些問題要求用戶關於相機的權限。 authorizationStatus
總是NotDetermined
。當我試圖詢問用戶許可時,AVCaptureDevice.requestAccessForMediaType
永遠不會彈出對話框,並始終返回false
。我也無法在設置 - 隱私 - 相機中找到我的應用程序。AVCaptureDevice.requestAccessForMediaType永遠不會彈出窗口,並總是返回false
任何人都可以幫助我嗎?非常感謝
let availableCameraDevices = AVCaptureDevice.devicesWithMediaType(AVMediaTypeVideo)
for device in availableCameraDevices{
if (device.position == .Back){
backCameraDevice = device
}else{
if (device.position == .Front){
frontCameraDevice = device
}
}
}
let authorizationStatus = AVCaptureDevice.authorizationStatusForMediaType(AVMediaTypeVideo)
switch authorizationStatus {
case .NotDetermined:
// permission dialog not yet presented, request authorization
AVCaptureDevice.requestAccessForMediaType(AVMediaTypeVideo,
completionHandler: { (granted:Bool) -> Void in
if (granted == false) {
print(granted)
}
else {
print(granted)
}
})
case .Authorized: break
// go ahead
case .Denied, .Restricted: break
// the user explicitly denied camera usage or is not allowed to access the camera devices
}
我試圖構建一個新的應用程序並運行相同的代碼,並且它會觸發系統對話框以允許允許。但是,它不適用於我的舊應用程序...我不確定是否有任何需要在info.list中設置的內容。此外,我已經嘗試重置隱私多次,並且我的iPhone上的每個應用程序都請求訪問除我的攝像頭外的其他設備。 –
更新:在新應用程序中,當我運行AVCaptureDevice.requestAccessForMediaType時,它首先彈出一個系統對話框讓用戶選擇,然後返回授予。但在我的應用程序,AVCaptureDevice.requestAccessForMediaType只是自動拒絕權限 –
即使重置?也許你的應用程序對UIKit做一些有趣的事 –