运行Vision Framework动物姿态检测Demo时摄像头黑屏求助
解决苹果动物姿态检测Demo摄像头黑屏问题
检查相机会话配置
确认Demo里的AVCaptureSession是否正确配置了输入设备。有些时候Demo默认只指定后置摄像头,要是设备后置摄像头故障或者用模拟器(模拟器本身没有真实摄像头)运行,就会出现黑屏。可以试试添加前置摄像头的 fallback 逻辑,或者在真机上测试后置摄像头是否能正常工作。验证权限状态
虽然你已经添加了权限,但可以在代码里主动检查权限状态。比如调用AVCaptureDevice.requestAccess(for: .video),确保权限确实被授予。有时候info.plist里的权限描述字符串格式有误(比如拼写错误),系统可能没弹出权限请求框,导致权限没获取到。检查预览层设置
确认AVCaptureVideoPreviewLayer是否正确添加到视图层级,并且frame设置没问题。如果预览层的frame是CGRectZero或者没添加到父视图,画面就会显示黑屏。调试时可以打印预览层的frame和superview,确认它是否正确挂载。排查Vision请求的阻塞问题
动物姿态检测的Vision请求如果在主线程执行,可能会阻塞UI和相机预览的更新。检查Demo里的代码,确保Vision请求是在后台队列执行的,别阻塞主线程导致画面无法渲染。测试设备兼容性
动物姿态检测要求iOS 15及以上系统,且设备搭载A12及以上芯片。要是你的设备不满足这些要求,可能会导致摄像头无法正常工作或者检测失败,表现为黑屏。确认你的测试设备符合最低系统和硬件要求。
内容的提问来源于stack exchange,提问作者Gabriel Rejaili
相关产品推荐
相关产品推荐

