在iOS和WatchKit中使用Cocoa Touch框架

10

我有一个Cocoa Touch框架,用于在我的iOS应用和WatchKit应用上使用。在iOS 8上我没有遇到任何问题,但是当我将项目移植到iOS 9并更新WatchKit应用程序以本地运行时,出现了以下错误:

ParkFinderKit was rejected as an implicit dependency for 'ParkFinderKit.framework' because it doesn't contain platform 'watchsimulator' in its SUPPORTED_PLATFORMS 'iphonesimulator, iphoneos'

我尝试手动将watchossimulator和watchos添加到支持平台列表中: 配置支持的平台 但是这会产生另一个错误:
ParkFinderKit was rejected as an implicit dependency for 'ParkFinderKit.framework' because its SDK is platform 'com.apple.platform.iphonesimulator' and it needs to match platform 'com.apple.platform.watchsimulator'

有什么解决我问题的想法吗?

我也遇到了同样的问题,但是我无法像你那样解决它,你有什么建议吗? - Loegic
1个回答

4

好的,看起来你不能在WatchKit应用程序中使用Cocoa Touch Framework。 我通过创建一个新的Watch Framework目标,并在目标成员资格选项中将原始框架的每个文件分配给新框架,来解决了这个问题。

enter image description here

这实现了我在iOS和WatchKit之间共享代码而不重复代码的目标。


2
这在Xcode 7 beta4中不起作用 - 是同样的问题,但是相反的情况,WatchKit框架不支持iPhone平台。有人有另一个答案吗? - Chris Baxter
@ChrisBaxter 你尝试过在构建之前进行清理吗? - Motoko
@g0ld2k,针对Xcode 9+的解决方案是否有更新? - Victor 'Chris' Cabral
@Victor'Chris'Cabral 没错,我最终放弃了在我的应用中使用WatchKit应用。 - g0ld2k

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接