Objective C框架/静态库是否可以由第三方框架

时间:2016-03-22 12:52:05

标签: ios objective-c swift static-libraries

这只是一个信息性问题,我一直在研究在iOS中制作框架的几种方法。

我做了 Swift Pure框架: - 我必须知道,您必须将xcodeproject包含到应用程序项目中才能使用.xocdeproject中包含的.framework。所以我认为这不是向第三方提供代码的安全方式,而且我也没有找到将第三方框架包含在我自己的框架中的方法。

目标静态库: - 在这种类型的库中,系统生成一个安全的.a文件,并且该人将使用不知道实现部分但是发现如果我想要包含第三方框架,我将不得不问结束用户将该第三方项目包含在最终应用程序中以进行编译,这将向最终用户显示我所拥有的所有依赖项,这是我不想要的。

我的问题是我想制作一个包含所有第三方框架的框架,但是它们会被最终用户隐藏,尽管最终用户仍然可以根据需要使用它们的代码,但最终用户不应该看到他们在我的框架中列出。

有出路吗?

我经历了很多链接,发现许多人也有这种疑问

喜欢

Adding FacebookSDK.framework into my own Static library

在这篇文章中,要求一个人获取所有头文件和框架文件,然后将其添加到静态库以构建以添加框架本身,我也尝试了这一点而没有成功。

1 个答案:

答案 0 :(得分:0)

不要这样做。

你要做的事实上没有好结果。这非常令人困惑,并将您的库API与不同的库API相结合,迫使用户坚持使用您的第三方库的版本。

如果用户想要使用较新版本的第三方依赖关系,他将无法使用,因为它会导致重复的符号。

您无法在互联网上找到有关此类做法的任何信息,因为没有人这样做

如果你想分发一个已经编译好的库,除了只使用它编译所有第三方代码之外别无他法,而不会暴露头文件。

还有一个非常重要的事情:如果他们也使用第三方库,你必须确保SDK的用户不会得到重复的符号!

More here...

And here...