如果Framework未链接到项目,则发出警告

时间:2014-07-22 10:21:19

标签: ios objective-c xcode

我正在创建一个静态库,用于多个项目,并想知道如果导入我的静态库的项目尚未链接到所有依赖框架,是否仍然显示警告。

说,如果这个静态库依赖于MapKit.framework和CoreLocation.framework,我想显示一些框架缺失的警告。

(我知道在构建时,如果依赖框架没有正确链接,XCode将抛出未找到的符号,但仍然需要显示友好消息。)

2 个答案:

答案 0 :(得分:2)

您可以使用语言扩展来使用__has_include检查是否存在头文件。

http://clang.llvm.org/docs/LanguageExtensions.html#include-file-checking-macros

答案 1 :(得分:1)

您无法显示消息,因为如果缺少依赖项,app将无法编译,因此您的代码将永远不会运行,直到用户添加所需的框架。

解决这个问题的最佳方法是,首先正确记录依赖项,然后在文档中的某处添加一个故障排除部分,其中列出了由于缺少框架而导致的所有可能错误以及解决它们的说明。