在iOS Project和自定义创建的iOS Framework之间共享代码

时间:2017-07-04 13:42:16

标签: ios objective-c iphone ios-frameworks

我编写了一个使用SAMKeychain的框架。这个frameworkA在iOS项目中使用。

作为回报,iOS项目还有一些使用相同SAMKeychain的其他类。我试图找到一种方法在框架中引用SAMKeychain并在框架内包含作为依赖项(但不包括SAMKeychain源)。

我尝试在框架中引用SAMKeychain的头文件并尝试构建框架,但它失败了链接错误 _OBJC_CLASS _ $ _ SAMKeychain

在框架和iOS项目之间共享第三方代码的最佳方式是什么

1 个答案:

答案 0 :(得分:0)

解决方案是使用动态框架。因此,当制作frameworkA时,它应该是动态的,它包含的Pods SAMKeychain也应该是动态的,你可以使用

Podfile中的

use_frameworks!将为Pod SAMkeychain创建SAMkeychain.framework。

在iOS项目中创建frameworkA二进制文件后,您必须将frameworkA和SAMKeychain.framework都添加为嵌入式二进制文件。这样就可以了。

请注意,如果您不在Podfile中使用use_frameworks,它将生成pod的静态库,该库将包含在frameworkA的二进制文件中。

希望这有助于某人!