示例 AVCAM - Swift Xcode v9
Posted
技术标签:
【中文标题】示例 AVCAM - Swift Xcode v9【英文标题】:Sample AVCAM - Swift Xcode v9 【发布时间】:2017-08-22 05:20:06 【问题描述】: @objc func didTapCameraView()
self.cameraView.isUserInteractionEnabled = false
self.spinner.isHidden = false
self.spinner.startAnimating()
let settings = AVCapturePhotoSettings()
let previewPixelType = settings.availablePreviewPhotoPixelFormatTypes.first!
let previewFormat = [kCVPixelBufferPixelFormatTypeKey as String: previewPixelType, kCVPixelBufferWidthKey as String: 160, kCVPixelBufferHeightKey as String: 160]
settings.previewPhotoFormat = previewFormat
if flashControlState == .off
settings.flashMode = .off
else
settings.flashMode = .on
cameraOutput.capturePhoto(with: settings, delegate: self)
当我使用 Xcode 9 swift 4 运行应用程序时出现此错误
x86_64 架构的未定义符号: "__T0So22AVCapturePhotoSettingsC12AVFoundation01_abC16SwiftNativeTypesACWP", 参考自: __T014vision_app_dev8CameraVCC06didTapD4ViewyyF in CameraVC.o "__T012AVFoundation39_AVCapturePhotoSettingsSwiftNativeTypesPAAE016availablePreviewc11PixelFormatG0Says6UInt32VGfg", 参考自: CameraVC.o ld 中的 __T014vision_app_dev8CameraVCC06didTapD4ViewyyF:未找到架构 x86_64 的符号:错误:链接器 命令失败,退出代码为 1(使用 -v 查看调用)
【问题讨论】:
遇到同样的错误 ***.com/questions/46202060/… 的副本 【参考方案1】:尝试改变
let previewPixelType = settings.availablePreviewPhotoPixelFormatTypes.first!
到
let previewPixelType = settings.__availablePreviewPhotoPixelFormatTypes.first!
***Apple 不小心将一些 AVFoundation API 外部协议设为私有,因此在访问它们的方法之前有 2 个取消标记 _
。
来源:https://forums.developer.apple.com/thread/86810#259270
来源:Try Sample AVCAM from apple found error
【讨论】:
以上是关于示例 AVCAM - Swift Xcode v9的主要内容,如果未能解决你的问题,请参考以下文章
在 Swift iOS Xcode 中可以使用材料垂直步进形式