Xcode和可选框架

Jee*_*eef 11 macos xcode ios

Linked框架和库下,有一个RequiredOptional选项.

有人可以解释一下哪种情况以及如何使用可选框架?我可以假设看到的情况,我有一些试验数据和IF框架包括我将要启用某种功能,如果不包括比它也许是我不会做的东西....

但是否则我不知道什么时候你想要使用可选框架

(代码示例如果存在则会很棒)

Tam*_*ola 16

如果您要定位某些框架可能尚未提供的旧操作系统版本,则可选链接非常有用.在这种情况下,您可以将给定框架的链接设置为可选,这会导致程序在启动时dlopen不会崩溃,如果找不到给定的框架.

然后在您的代码中,您可以将守护语句放在此框架的使用周围,以避免使用未解析的符号的b/c崩溃:

 if (MyWeakLinkedFunction != NULL)
 {
     result = MyWeakLinkedFunction(); // this function comes from a weakly/optionally linked framework
 }
Run Code Online (Sandbox Code Playgroud)

请参阅:框架和弱链接