Xcode Symbol navigator - iOS 设备和 iOS 模拟器的符号显示两次
Posted
技术标签:
【中文标题】Xcode Symbol navigator - iOS 设备和 iOS 模拟器的符号显示两次【英文标题】:Xcode Symbol navigator - Symbols displayed twice once each for iOS device and iOS Simulator 【发布时间】:2018-04-27 08:01:50 【问题描述】:Xcode 符号导航器列出了框架提供的符号两次; ios 和模拟器各一次。
例如,这里是为模拟器列出的 NSObject
和 NSObject 为 iOS 设备列出
同样,这里为模拟器列出了 UIDevice
和 UIDevice 为 iOS 设备列出
我记得,以前从来没有这种情况。这些符号应该只列出一次。
我正在使用 Xcode 版本 9.3 (9E145),在 macOS High Sierra 10.13.4 (17E202) 上运行。
更新:我正在使用 Xcode 版本 9.4.1 (9F2000),在 macOS High Sierra 10.13.5 (17F77) 上运行(在撰写本文时,它们都是最新的)。
如何恢复每个符号仅显示一次的默认行为?
我已经试过了:
清理构建文件夹,
重启 Xcode,
删除派生数据
重新启动系统。
重新安装 Xcode。
在我使用 Xcode 打开的每个项目中都会观察到这种行为。
【问题讨论】:
这是否发生在同一台计算机上的其他用户帐户中?你能刷新 Xcode 首选项吗? 我的系统中只有一个用户帐户。让我创建一个新帐户并尝试。 在新创建的用户帐户中没有发生。 如我所想。你愿意刷新 Xcode 设置 plist(可能在 ~/Library/Preferences 中)吗?如果是这样复制到您的桌面以防万一出现问题。 你能试试this吗?这里有一点万岁玛丽。 【参考方案1】:由于问题仅出现在您的用户帐户上,请尝试:
刷新 Xcode 首选项 plist 文件 ~/Library/Preferences/com.apple.dt.Xcode.plist
。 (警告:这将重置所有自定义用户首选项)。
从here 运行以下重置脚本:
#!/bin/bash
killall Xcode
xcrun -k
xcodebuild -alltargets clean
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang.$(whoami)/ModuleCache"
rm -rf ~/Library/Developer/Xcode/DerivedData/*
rm -rf ~/Library/Caches/com.apple.dt.Xcode/*
open /Applications/Xcode.app
很可能某些设置已打开,您不知道如何关闭。如果您想弄清楚究竟是什么设置,您可以比较这些 plist。
【讨论】:
以上是关于Xcode Symbol navigator - iOS 设备和 iOS 模拟器的符号显示两次的主要内容,如果未能解决你的问题,请参考以下文章
Xcode PhoneGap navigator.connection 未定义
xcode 13.3.1 模拟器编译 Undefined Symbol: _RCTRegisterModule等问题
xcode 13.3.1 模拟器编译 Undefined Symbol: _RCTRegisterModule等问题
如何将 TabBar + Navigation 与 XCode 结合使用
Xcode 4.2, Three20 on iOS 3.0 Symbol not found: _OBJC_CLASS_$_UISplitViewController