![](/img/trans.png)
[英]How to subproject or target multiple app equivalents in iOS 10 / Xcode 8 / Swift 3
[英]Xcode won't archive Swift iOS app with a Swift framework as a separate target. How can this be fixed?
我有一个使用Swift创建的iOS应用。 由于我的项目中有一个小部件,并且想在我的小部件和应用之间共享代码,因此我的项目中也有一个Swift框架。 我可以成功构建我的应用程序。 首先,我必须构建框架,然后才能构建应用程序。 但是,当我尝试存档该应用程序以进行分发时,它失败并出现两个错误。
module.modulemap: Header '{My Framework Name}-Swift.h' not found.
Could not build Objective-C module '{My Framework Name}'.
我的应用程序中有三个目标,分别是应用程序,小部件和框架。
该框架包含Swift文件的集合,以及包含以下内容的Objective-C标头:
#import <UIKit/UIKit.h>
FOUNDATION_EXPORT double XScheduleKitVersionNumber;
FOUNDATION_EXPORT const unsigned char XScheduleKitVersionString[];
我的Mac正在运行OS X 10.10.2。 Xcode是6.3版。 我的应用程序适用于iOS 8.0+。 我正在研究的项目的全部内容都是开源的,可从https://github.com/Cin316/X-Schedule获得 。
我自己遇到了这个令人沮丧的问题。 似乎使用纯Swift框架目标,Objective-C头文件会导致间歇性或奇怪的构建错误(Xcode错误?)。 似乎违反直觉,但解决方案的一部分至少是将头文件从public更改为project,或者只是将其从构建目标中删除。 我希望我对它为什么有效有更好的解释!
我已经在这里分叉了您的项目并创建了一个构建(至少可以在我的机器上运行): https : //github.com/acwright/X-Schedule
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.