如何检测是否存在dyld-ed符号?

时间:2011-10-19 00:09:21

标签: ios macos app-store dyld

是否存在检测符号是否存在的常用方法?与iOS5中的CGPathCreateCopyByStrokingPath()类似,仅适用于iOS5及更高版本。 如果我在iOS 4设备上使用此例程编译和运行应用程序,我会收到运行时dyld错误。

在Objective-C中,+ class和其他实用程序API可用于确定某些类或某些选择器的存在,是否有任何API在dyld-ed符号上执行此操作?

或者Apple是否允许将dyld函数用于面向AppStore的应用程序?

1 个答案:

答案 0 :(得分:3)

要检查函数的可用性,请将其地址明确地与NULL或nil进行比较。

if (CGPathCreateCopyByStrokingPath != NULL) {
    // it exists
}

这是Apple's documentation on the matter(清单3-2)。