使用Xcode上的App和Extension复制WatchOS2的目标

时间:2015-10-07 19:10:47

标签: ios xcode apple-watch watch-os-2 xcode-scheme

我有一个带有WatchOS2目标的项目以及一个扩展。我想复制WatchOS App目标和扩展。但是,当我复制WatchOS App目标时,它仍然链接到旧的扩展。由于我们无法再访问WatchOS App的构建阶段,因此无法在嵌入式应用程序扩展阶段进行更改。

初始状态

  • WatchAppTarget1(嵌入扩展程序 - WatchAppExtension1)
  • WatchAppExtension1

最终状态

  • WatchAppTarget1(嵌入扩展程序 - WatchAppExtension1)
  • WatchAppExtension1
  • WatchAppTarget-Duplicate(嵌入式扩展程序仍指向 - WatchAppExtension1)
  • WatchAppExtension-复制

是否有更改WatchOS应用程序目标以接受重复的扩展作为其嵌入选择(除了手动编辑.pbxproj)

1 个答案:

答案 0 :(得分:6)

现在我发现在浪费了大量时间之后实现这一目标的最不刺激的方法是将WatchOS应用程序更改为类似框架,以便Xcode提供构建阶段部分。

在文本编辑器中打开project.pbxproj,转到类似/* Begin PBXNativeTarget section */的部分找到您的WatchOS目标(您要更改的目标),它应该有一行:< / p>

productType = "com.apple.product-type.application.watchapp2";

将其更改为:

productType = "com.apple.product-type.application";productType = "com.apple.product-type.framework";

现在在Xcode中打开项目你应该是苹果看到Build Phases部分,去那里并删除&#34; Target Dependencies&#34;中的旧扩展引用。和#34;嵌入App扩展&#34;并用新的替换它。完成后,请返回project.pbxproj并撤消更改并将WatchOS目标恢复为productType = "com.apple.product-type.application.watchapp2";

有时您可能需要为WatchOS和iOS应用程序制定新的构建方案,但这应该可以解决问题!