将Objective C Framework导入我的Swift项目后,我的项目无法识别我的桥接文件

时间:2016-08-04 08:03:35

标签: ios objective-c swift header-files bridging

我必须将一个框架导入到用Objective C编写的Swift项目中。所以我创建了一个Bridging文件,在我将Header文件添加到它并编译后,我的项目说它无法找到他们。下图显示了我的框架,您可以清楚地看到AWController.h,但是在构建时它会在我的桥接文件中引发错误。

enter image description here

Bridging文件显示在我的设置中,所以我做错了什么或者我错过了什么?我在Build Settings中将Defines Module设置为Yes,而我的Module Name没有空格。

enter image description here

2 个答案:

答案 0 :(得分:0)

您不应该使用桥接头。只需在您使用它的swift文件中使用import AWSDK

答案 1 :(得分:0)

我会在website审核AWS的设置。他们甚至有一个部分详细介绍了使用Swift iOS9。

除其他外,如果您使用的是Frameworks手动集成,请确认步骤4已完成。

  

在目标的Build Phases选项卡下,单击上的+按钮   在左上角,然后选择New Run Script Phase。然后设置构建   阶段如下。确保此阶段低于嵌入框架   相:

     

Shell / bin / sh

     

的bash   “$ {BUILT_PRODUCTS_DIR} / $ {FRAMEWORKS_FOLDER_PATH} /AWSCore.framework/strip-frameworks.sh”

     

在构建日志中显示环境变量:仅在选中时运行脚本   安装:未选中

     

输入文件:空输出文件:空

您可能希望安装并使用Carthage来简化这一过程。转到Homebrew website然后安装自制软件后,您将从命令行运行brew install carthage。之后返回上面的链接并按照迦太基的说明进行操作。

其次,我将再次讨论使用桥接头文件的Apple Documentation,看看是否有任何边缘情况适用,并且只是作为一个完整性检查。

第三,如果这不起作用,我只是尝试创建一个空的Swift项目,并使用上面的一种技术再次执行这些步骤。项目文件中的一个或多个设置可能有问题,或者文件本身可能已损坏。

BTW - 产品包标识符应该遵循com.yourdomain.YourProductName的约定。