0

(回答自己的问题;请参阅下面的回答。)

当我尝试在 iOS 模拟器中运行 Today 扩展时,Xcode 6 会要求我选择一个应用程序来附加调试器。在我选择“Today”应用程序后,Xcode 会报告“Running Today-View on iPhone”,但 Today-View 永远不会出现。如果我手动下拉今日视图,我的今日扩展将不存在。

有趣的是,即使我在我的 Xcode 项目中添加了一个全新的应用程序目标和一个全新的 Today 扩展目标,我仍然无法让 Xcode 在 iOS 模拟器中运行和调试全新的 Today 扩展。

我将旧 Xcode 项目的构建设置与新 Xcode 项目的构建设置进行了比较。两者之间似乎没有任何显着差异。

为什么 Xcode 不能在 iOS 模拟器中针对我的旧 Xcode 项目运行我的 Today 扩展?

4

1 回答 1

0

我遗留的 Xcode 项目的构建目录是相对于 Xcode 项目的位置的。也就是说,构建产品没有放在 ~/Library/Developer/Xcode/DerivedData/ 下的“派生数据”目录中...我假设 Xcode 在相对于 Xcode 项目定位时找不到 Today 扩展。因此,Xcode 无法使用 Today-View 应用程序运行它以在模拟器中进行调试

那么,如何将构建目录从遗留位置移动到“派生数据”位置?

  1. 打开旧 Xcode 项目后,转到“文件 > 项目设置...”
  2. 点击“高级...”
  3. 将构建位置从“Legacy”更改为“Xcode Default”(这可能是您的“派生数据”目录。)

(感谢这个问题:为什么 Xcode 4 不创建任何产品?

经过这个改变,我终于可以通过 iOS 模拟器调试我的 Today 扩展了!

于 2014-10-20T21:08:14.917 回答