Facebook的SDK 3.1的iOS - 在iOS6的在iOS 5.x的运行,但崩溃(Face

2019-06-18 08:19发布

我们刚刚更新我们的Facebook SDK适用于iOS 3.1。 Facebook的SDK 3.0.8没有对iOS6的运行,现在我们已经升级到3.1,它运行在iOS 6中,但在iOS的5.x的崩溃

因为在iOS 5.x的AdSupport.framework程式的应用程序崩溃与以下错误启动后瞬间:

dyld: Library not loaded: /System/Library/Frameworks/AdSupport.framework/AdSupport

Referenced from: /Volumes/Macintosh HD/Users/dmitrybaranov/Library/Application Support/iPhone Simulator/5.0/Applications/D6A93996-1E58-48A5-A457-DBC4FCCEE0EB/app.app/app
        
Reason: image not found
(lldb)

有没有人遇到这个问题? 有什么问题Facebook的一侧,有家伙就解决这个工作?

或者,我们做错了什么?

Answer 1:

你设定的框架是可选的? 当您添加AdSupport.framework程式,Social.framework和Accounts.framework,有菜单下拉到可以“必需”和“可选”之间进行选择的权利。 看到这里的图片例如: 链接

检查另一件事是在项目的“生成设置”是“基地SDK”是6.0的iOS部署目标“是的iOS 4.3。

我能够建立FB SDK 3.1在我的iOS 5.1使用这些设置。



Answer 2:

如果你的目标低于6.0的iOS版本,你需要做AdSupport.framework程式 ,Social.frameworkAccounts.framework可选连接。

请看看随附的屏幕截图。

干杯...!!!



Answer 3:

对于任何人读这篇文章,使用Facebook的SDK 3.6或更高版本的iOS,您不再需要包括这些库或可选链接它们。 看到Facebook的文档进行升级,从3.5到3.6:

“删除,当你安装了Facebook SDK添加到您的应用程序框架的依赖关系的SDK仍然依赖于他们,但现在它们加载自动使设置更简单的删除这些框架/库:

Accounts.framework

AdSupport.framework

Security.framework

Social.framework

libsqlite3.dylib [或移除-lsqlite3.0链接器标志]

[注:如果你的应用程序直接使用任何的API从这些框架/库,你的项目应该还是包括框架明确]”



文章来源: Facebook SDK 3.1 for iOS - runs on iOS6, but crashes on iOS 5.x