37

我刚刚下载了 Xcode 12 beta 2,现在我在运行我的应用程序时在控制台中收到了一堆奇怪的日志(使用 Xcode 11.5 时不会出现这些警告)。
它们如下所示:

objc[5551]: Class CSAudioFileManager is implemented in both 
/Applications/Xcode-beta.app/Contents/Developer/Platforms/
iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/
Contents/Resources/RuntimeRoot/System/Library/
PrivateFrameworks/SpeakerRecognition.framework/SpeakerRecognition (0x1382890e0) 
and 
/Applications/Xcode-beta.app/Contents/Developer/Platforms/
iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/
Contents/Resources/RuntimeRoot/System/Library/
PrivateFrameworks/CoreSpeech.framework/CoreSpeech (0x13772c7a8).
 One of the two will be used. Which one is undefined.

我也为其他一些类(如(、、、、等))获取CSVoiceIdXPCClientCSNNVADEndpointAnalyzer这些CSAudioRecordContext日志CSOSTransaction。该应用程序使用 CoreData(与 CloudKit 结合)、FileManager 和 UserDefaults。如果应用程序使用 Xcode 11.5 运行,则不会显示日志,并且对于大多数类,我很确定它们不会在我的代码中使用(至少我不会故意使用它们)。
请注意,日志仅在使用 iOS 14.0 运行模拟设备时出现。例如,如果您选择 iPhone 11 Pro (13.5),则不会出现日志(仍然使用 Xcode 12)。

那么这个问题是否有解决方案,或者它只是当前 Xcode 12 beta 版本的一个错误,将在进一步的 Xcode 12 beta 版本发布期间被删除?

编辑:
现在objc[5551]...替换为objc[6229]...

4

4 回答 4

7

我有相同的日志(使用 Xcode Beta 3)。我认为这可能与当前的 Xcode 12 beta 版本有关。

编辑:这些日志不再出现在我面前。Xcode 12.0.1 (12A7300)

于 2020-07-28T13:24:20.743 回答
4

就我而言,CoreSpeechSpeakerRecognition我不小心删除了~/Library/Developer/CoreSimulator/Caches. 可以通过以下方式恢复缓存:

  1. 使用定位到存在问题的运行时xcrun simctl list -j runtimes
  2. 在运行时的 json 对象中,您有望找到bundlePath、和runtimeRootidentifierbuildversion
  3. 使用查找 MacOS 的构建版本sw_vers -buildVersion
  4. $(bundlePath)/Contents/Resources目录中,您将找到update_dyld_sim_shared_cache可执行文件
  5. 调用update_dyld_sim_shared_cache. -root将选项指定为runtimeRoot来自运行时 json 对象的选项。指定-cache_dir~/Library/Developer/CoreSimulator/Caches/dyld/$(mac_os_build_version)/$(identifier).$(buildversion)

如果您在 Big Sur 11.3 Beta、Xcode 12.4 和模拟器运行时 14.4 上运行该命令,组装后的update_dyld_sim_shared_cache调用将如下所示:

/Applications/Xcode12.4.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/update_dyld_sim_shared_cache -root /Applications/Xcode12.4.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot -cache_dir ~/Library/Developer/CoreSimulator/Caches/dyld/20E5196f/com.apple.CoreSimulator.SimRuntime.iOS-14-4.18D46
于 2021-03-20T19:24:33.053 回答
2

通过删除 Xcode 12.5.1 并重新安装它,我解决了这个问题。我在这里看到myjunk的评论建议这样做,是的,它对我有用。

我还在这台机器上安装了 Xcode 13 beta 以及发布版本。我在 Xcode beta 上构建并运行了相同的项目,在 Xcode 12.5.1 上发现问题没有问题,然后更重要的是回到 Xcode 12.5.1,问题仍然得到解决。重新安装 Xcode 12.5.1 就成功了,看起来你不必担心使用 beta 必然会导致它们返回......

于 2021-08-18T03:39:43.977 回答
-2

你好我升级XCode到12.5后也遇到过类似的情况,解决方法是:

  1. 如果正在运行,请关闭 XCode 和模拟器
  2. 删除 ~/Library/Developer/CoreSimulator/Caches
  3. 删除 ~/Library/Developer/CoreSimulator/Devices
  4. 打开 XCode,选择您的方案并构建项目。
  5. 如果您在选择模拟器时发现重复的模拟器,您可以删除任何您不想使用的模拟器。
于 2021-05-28T00:59:07.203 回答