安装Ruby、CocoaPods后Xcode项目网络连接异常,如何恢复至初始状态?
解决方案
咱们分两个核心部分来解决你的问题:先把系统的Ruby、CocoaPods环境恢复到执行安装命令前的状态,再处理Xcode项目里的具体错误。
一、恢复系统默认的Ruby与CocoaPods环境
你安装的RVM和自定义Ruby环境覆盖了macOS自带的系统Ruby,这很可能是影响Xcode的根源,咱们一步步清理:
卸载RVM
打开终端执行以下命令彻底移除RVM:rvm implode之后打开你的shell配置文件(比如
~/.bash_profile、~/.zshrc或~/.profile),删掉所有和RVM、自定义GEM_HOME相关的配置行,比如:export GEM_HOME=$HOME/.gem export PATH=$GEM_HOME/bin:$PATH保存文件后,重启终端让配置生效。
清理用户级的Ruby与Gem
删除用户目录下的自定义gem文件夹:rm -rf ~/.gem同时卸载所有用户级安装的CocoaPods:
gem uninstall cocoapods --all --user-install恢复系统级CocoaPods
使用macOS自带的系统Ruby重新安装CocoaPods(这是你执行安装命令前的默认状态):sudo gem install cocoapods安装完成后,可以用
which pod检查,应该指向/usr/local/bin/pod(系统级路径)。
二、解决Xcode项目中的错误
从你的调试日志来看,项目有两类问题,咱们分别处理:
1. 网络连接错误(Error Code -1003)
这个错误表示无法连接到目标主机,和环境变更可能无关,但可以按以下步骤排查:
- 先在浏览器中访问
https://api.offernews.co/api/citys,确认这个API地址是否能正常返回数据 - 检查Xcode项目的
Info.plist文件,查看NSAppTransportSecurity配置,确保允许访问该域名(如果是HTTPS地址,默认ATS是允许的,但如果域名证书有问题,可能需要添加例外) - 检查Mac的系统网络代理设置,确认没有开启不必要的代理导致连接失败
2. 布局约束冲突
日志里明确指出了约束冲突,系统已经自动打破了一个高度为50的约束来临时恢复,但你需要彻底修复:
- 打开Xcode的Debug View Hierarchy(调试区域的按钮),找到日志中提到的
UIView:0x7fe90cf28e60,查看它的所有约束 - 注意日志里的
UISV-fill-equally约束(StackView的子视图等高设置),这个约束和你手动设置的高度为50的约束冲突了 - 解决方法:要么降低那个高度为50的约束的优先级(比如从1000改成750),要么删掉手动设置的高度约束,让StackView的等高设置自动控制子视图高度
- 可以添加一个符号断点
UIViewAlertForUnsatisfiableConstraints,这样下次运行时能直接定位到添加冲突约束的代码位置
内容的提问来源于stack exchange,提问作者Ali kazemi
相关产品推荐
相关产品推荐

