我使用 Swift 3.0 和 Xcode 8 Beta 2 创建了一个 iOS 单 View 应用程序。我正在与 AVFoundation.framework 链接。

这是我的 View Controller 代码:

import UIKit
import AVFoundation

class ViewController: UIViewController {

  override func viewDidLoad() {
    super.viewDidLoad()

    if AVCaptureDevice.authorizationStatus(forMediaType: AVMediaTypeVideo) == .notDetermined {
      AVCaptureDevice.requestAccess(forMediaType: AVMediaTypeVideo, completionHandler: { (granted: Bool) in
        if granted {
          print("granted")
        }
        else {
          print("not granted")
        }
      })
    }
  }
}

当我在我的设备上运行它时,应用程序在执行 AVCapture.requestAccess 行后崩溃(不执行完成处理程序,也没有抛出异常)。

控制台中唯一的东西是:
2016-07-15 14:55:44.621819 testpp[2261:912051] [MC] System group container for systemgroup.com.apple.configurationprofiles path is /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles
2016-07-15 14:55:44.626012 testpp[2261:912051] [MC] Reading from public effective user settings.
2016-07-15 14:55:59.284610 testpp[2261:912085] [access] <private>

难道我做错了什么?

最佳答案

确保在请求相机访问时为 Privacy - Camera Usage Description 文件中的 Info.plist 键设置一个值。

关于ios - AVCaptureDevice.requestAccess() 崩溃,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38403387/

10-10 16:11