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

macOS Ventura下Xcode14+Swift5读取文件权限错误求助

解决macOS下Xcode读取.raw文件的权限错误问题

错误原因分析

你遇到的NSCocoaErrorDomain Code=257错误,本质是macOS Ventura的隐私权限和Xcode沙箱机制限制,和Assets.xcassets为空、无plist文件无关。

具体解决方案

  • 配置App Sandbox权限
    打开项目的Signing & Capabilities标签,点击+ Capability添加App Sandbox:

    • 如果读取用户手动选择的文件,勾选Files and Folders下的User Selected File;
    • 如果读取项目包内的文件,确保文件已添加到项目的Copy Bundle Resources构建阶段(在Build Phases标签下)。
  • 替换强制解包的try!
    不要用try!强制解包,改用do-catch捕获错误,避免直接崩溃:

    do {
        let data = try Data(contentsOf: fileURL)
        // 后续处理UInt16数据逻辑
    } catch {
        print("文件读取失败:\(error.localizedDescription)")
    }
    
  • 正确获取项目内文件路径
    不要直接使用绝对路径,通过Bundle获取包内文件,避免路径或权限问题:

    guard let fileURL = Bundle.main.url(forResource: "p03-4M1-041", withExtension: "raw") else {
        print("项目中找不到目标.raw文件")
        return
    }
    
  • 检查系统隐私权限
    打开系统设置→隐私与安全性→文件与文件夹:

    • 找到你的应用,确保勾选了目标文件所在的文件夹;
    • 如果是调试阶段,也可以给Xcode赋予对应文件夹的访问权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 14:45:26