如何在iOS应用程序中动态链接设备框架?

问题描述:

现在我的应用程序使用的资产库框架仅适用于iOS 4.0及更高版本,用于多选照片,但我希望我的应用程序可以在iOS 3.2的设备上运行。如何在iOS应用程序中动态链接设备框架?

我可以动态链接资产库吗?如果是这样的话,我可以判断iOS SDK版本是否早于4.0,如果以前我会使用UIImagePickerController而不是Assets库,如果以后我可以动态加载Assets库并使用它进行多选。

您可以将框架设置为弱链接。当您在Xcode 4中选择框架时,您可以在可选/必需之间的右侧窗格中切换目标成员资格。

您应该阅读为文档中的较新符号添加运行时检查。

基本上你可以检查类的运行时可用性:

if ([INeedThisClass class]) ... // SDK 4.2 and later 

Classe ineedthis = NSClassFromString(@"INeedThisClass"); // SDK 4.1 
if (ineedthis) ... 
+0

谢谢,汤姆。你的回答非常有帮助 – tsing