2011-10-19 38 views
0

有沒有一種常見的方法來檢測符號是否存在?像iOS5中的CGPathCreateCopyByStrokingPath()一樣,它僅適用於iOS5及更高版本。 如果我在iOS 4設備上使用這個例程編譯和運行應用程序,我會得到一個運行時dyld錯誤。如何檢測符號符號是否存在?

在Objective-C中,+類和其他實用API可以用來確定某些類或某些選擇器的存在,是否有任何API可以對dyld-ed符號執行此操作?

或者,它是否在蘋果的權限下使用dyld函數的AppStore爲導向的應用程序?

回答

3

要檢查函數的可用性,請將其地址顯式比較爲NULL或nil。

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

這是Apple's documentation on the matter(列表3-2)。

+0

謝謝。這真的很有幫助。 – ZhangChn

相關問題