dvk*_*kch 10 facebook-ios-sdk ios6
我目前正在尝试在其3.14.1版本中使用Facebook SDK官方pod(也试过3.9,同样的结果),但我偶然发现了一个问题.
这是我的代码:
self->_session = [[FBSession alloc] initWithAppID:[[self class] facebookAppId]
permissions:self.mandatoryPermissions
urlSchemeSuffix:nil
tokenCacheStrategy:[FBSessionTokenCachingStrategy defaultInstance]];
[self->_session openWithBehavior:FBSessionLoginBehaviorWithFallbackToWebView
completionHandler:^(FBSession *session,
FBSessionState state,
NSError *error)
{
[self sessionStateChanged:session
state:state
error:error];
}];
Run Code Online (Sandbox Code Playgroud)
这非常受到facebook提供的代码示例的启发:https://developers.facebook.com/docs/facebook-login/ios/v2.0#步骤1b:使用自定义类打开会话
这是问题:
dyld: lazy symbol binding failed: Symbol not found: _OSAtomicDecrement32
Referenced from: /var/mobile/Applications/01DD5CE2-39A9-40AE-A8FC-170F7387D434/Dubb.app/Dubb
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: _OSAtomicDecrement32
Referenced from: /var/mobile/Applications/01DD5CE2-39A9-40AE-A8FC-170F7387D434/Dubb.app/Dubb
Expected in: /usr/lib/libSystem.B.dylib
Run Code Online (Sandbox Code Playgroud)
通过查看他们的SDK代码,我无法看到OSAtomicDecrement32它不存在的后备,并且它实际上存在于iOS 7.1的开始.
有什么建议?
谢谢
在 iOS7.0 上遇到同样的问题后,我实际上明白了这里发生了什么。
在 iOS >= 7.1 上,调用 OSAtomicIncrement32 被定义为其自己的函数,但在 iOS < 7.1 上,它也被定义为对其他函数的内联调用。
根据最小部署目标使用正确的定义,对我来说,它在我的 podfile 中设置为“7.1”。将其更改为:
platform :ios, '7.0'
解决了问题!
| 归档时间: |
|
| 查看次数: |
405 次 |
| 最近记录: |