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

使用Expo开发构建iOS应用时expo-camera组件报错NSCameraUsageDescription缺失

解决Expo开发构建中NSCameraUsageDescription未同步到Info.plist的问题

检查app.json配置格式

确保app.json里的配置层级和键名完全正确,正确结构如下:

{
  "expo": {
    "ios": {
      "infoPlist": {
        "NSCameraUsageDescription": "需要访问相机来拍摄照片/视频"
      }
    }
    // 其他项目配置...
  }
}

注意配置必须嵌套在expo根节点下的ios→infoPlist中,键名NSCameraUsageDescription大小写敏感,不能写错。

强制清除缓存并重建native目录

手动删除ios文件夹可能不彻底,执行以下命令清除Expo缓存并重新生成native文件:

npx expo prebuild --clean

完成后再运行expo run:ios重新构建。

利用expo-camera插件自动配置

直接通过expo-camera插件配置权限,比手动写infoPlist更可靠,插件会自动同步到native配置。在app.json的plugins数组中添加:

{
  "expo": {
    "plugins": [
      [
        "expo-camera",
        {
          "cameraPermission": "需要访问相机来拍摄照片/视频"
        }
      ]
    ]
  }
}

添加后执行npx expo prebuild --clean再重建项目。

手动修改项目Info.plist(临时方案)

如果以上方法都无效,直接修改ios/[你的项目名称]/Info.plist(注意不是ios/expo下的中间文件),添加以下XML条目:

<key>NSCameraUsageDescription</key>
<string>需要访问相机来拍摄照片/视频</string>

保存后重新运行expo run:ios即可生效。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 10:15:27