You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity macOS独立版构建后无法获取相机权限问题求助

macOS独立Unity应用相机权限请求不弹出的解决方案

针对你遇到的Unity 2021.3.13f1构建macOS应用后相机权限请求不显示的问题,可尝试以下步骤解决:

1. 检查并手动修正Info.plist

Unity有时会在构建时未正确将权限描述写入应用包的Info.plist,操作如下:

  • 右键你的macOS应用,选择「显示包内容」
  • 进入Contents文件夹,找到Info.plist文件
  • 打开文件(可使用Xcode或文本编辑器),确认是否存在NSCameraUsageDescription键,且对应的值为你设置的描述文本
  • 若不存在,手动添加该键:类型设为字符串,值填你的相机使用描述(比如"Camera")

2. 重置macOS相机权限缓存

macOS可能缓存了应用的权限状态,导致授权框不弹出:

  • 打开「终端」应用,执行命令:
    tccutil reset Camera
    
  • 执行后重启你的Unity应用,再次触发相机调用

3. 检查macOS沙盒权限配置

如果你的应用开启了沙盒模式,需要额外配置相机权限:

  • 回到Unity编辑器,打开「Player设置」->「Other Settings」
  • 确认「Enable macOS App Sandbox」是否开启,若开启:
    • 展开「Sandbox」选项,找到「Camera」权限并勾选
    • 重新构建应用

4. 确保相机调用触发时机符合macOS要求

macOS 10.14及以上版本要求权限请求必须由用户交互事件触发(比如按钮点击、鼠标点击),不能在应用启动时(如Start()方法中)自动调用相机:

  • 修改代码,将相机初始化/调用逻辑放在用户触发的事件中(例如UI按钮的OnClick事件回调、OnMouseDown方法内)

5. 尝试升级Unity版本

Unity 2021.3.13f1可能存在macOS权限相关的已知bug,可尝试升级到同LTS分支的更高版本(如2021.3.20f1及以上),此类版本通常会修复权限相关的兼容性问题

内容的提问来源于stack exchange,提问作者HJK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 06:47:09