xcode静态库公共/私有/项目头文件

时间:2015-12-29 17:34:37

标签: ios objective-c xcode static-libraries header-files

所以,我有一个带有静态库作为子项目的iOS应用程序项目。如此在SO上多次发现,您应该将库头文件的可见性设置为public / private / project,具体取决于谁应该可以使用它们。

基于此,我创建了一个带有头文件的类,该头文件向应用程序项目(或任何将使用此库的人)公开功能。当然,这个头文件从库项目中的其他类导入了许多头文件。由于这些其他头文件不提供应该向库的用户公开的功能,我想将它们设置为“项目”,使其对世界其他地方不可见。

但是,当我将头文件设置为“project”时,它们不会被复制到任何私有或公共头文件夹中。在编译使用该库的应用项目时,在'ProjectHeader.h' file not found中使用#import "ProjectHeader.h"会导致PublicLibraryClassHeader.h错误。

所以问题是:如何在库项目中将头文件设置为“项目”,并且在该库项目中使用它们?我是否误解了静态库中公共/私有/项目头文件的概念?

1 个答案:

答案 0 :(得分:1)

简单方法是将静态库转换为框架。 Framework是特定容器中的静态库,可以为您提供所有魔力。顺便说一下,关于公共标题的这个词与框架有关,而与静态库无关。