Flutter构建iOS应用归档遇权限错误,需上传TestFlight求解决办法
解决Flutter iOS归档时
shell-init: error retrieving current directory: getcwd: cannot access parent directories: Operation not permitted报错 临时应急方案(快速上传TestFlight)
- 直接通过Xcode完成归档上传:
- 终端执行
flutter build ios --release编译Release包 - 打开项目iOS目录下的
Runner.xcworkspace - 在Xcode中确认开发者团队签名配置正常,选择对应设备为
Any iOS Device (arm64) - 点击菜单栏
Product > Archive发起归档,完成后选择Distribute App直接上传至TestFlight
- 终端执行
- 迁移项目至权限宽松目录:
- 将Flutter项目移动到个人用户目录下(如
~/Documents/FlutterProjects/),避开系统级目录的权限限制 - 依次执行
flutter clean、flutter pub get、cd ios && pod install,再重新尝试归档
- 将Flutter项目移动到个人用户目录下(如
彻底修复方案
- 重置项目目录权限:
终端执行以下命令,替换/path/to/your/flutter/project为你的项目实际路径:sudo chown -R $(whoami):staff /path/to/your/flutter/project sudo chmod -R 755 /path/to/your/flutter/project - 修复Xcode目录访问权限:
- 关闭Xcode,打开系统偏好设置 → 安全性与隐私 → 隐私 → 文件与文件夹
- 找到Xcode,确保勾选了项目所在的目录(如Documents)
- 若上述选项缺失,右键项目文件夹 → 显示简介 → 共享与权限,添加当前用户并赋予读&写权限
- 清理跨设备签名残留:
- 删除iOS目录下的
Runner.xcworkspace、Pods文件夹 - 终端进入iOS目录,执行
pod deintegrate && pod install - 在Xcode中重新配置开发者签名,覆盖另一台电脑遗留的旧配置
- 删除iOS目录下的
内容的提问来源于stack exchange,提问作者Anything
相关产品推荐
相关产品推荐

