将dylib添加到“链接二进制文件库”和添加到“其他链接器标志”有什么区别?

3
在我的情况下,我将“libsqlite3.dylib”添加到iOS XCode项目的“Build Phases”的“Link Binary With Libraries”中。有人告诉我这可能会导致应用提交时被拒绝,并且我应该在“Build Settings”中将“-libsqlite3”添加到“Other Linker Flags”中。什么是最理想的方法?

我觉得很奇怪,为什么一个被拒绝了而另一个却是安全的。动态库在XCode中是不允许的,由于安全问题,苹果也不允许使用它们。然而,.dylib扩展名并不意味着该库是动态链接的。无论哪种方式,您都是在静态链接库,这应该没问题。 - Ege Akpinar
@lancegoh的回答涉及可选和必需框架之间的区别。通过将其标记为可选,您允许没有该库的用户仍能够下载您的应用程序。但是,您必须在代码中手动检查库的存在,否则它会在引用该库时崩溃。而且,libsqlite3已经存在一段时间了(甚至被Core Data弃用),所以我不明白为什么您需要将其标记为可选(假设lancegoh是正确的)。 - Ege Akpinar
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接