objective-c - 实现 Facebook iOS SDK - 无 "fbDidLogin"回调

标签 objective-c ios facebook sdk

我遵循官方 FB 文档中的集成步骤,并实现了 SDK 的“登录”和“发布到墙”功能,一切正常,但问题是只有当我使用主应用程序委托(delegate) .h/时它才起作用.m 文件。 但目前我需要将其放入另一个 .h/.m 文件中 - 登录有效,但“fbDidLogin”回调从未调用,我使用 NSLog 进行检查。我不太擅长 ObjC,并且使用游戏引擎,所以我想我错过了一些私有(private)/公共(public)声明的东西等。你能引导我朝正确的方向来修复它吗?提前致谢!

代码如下所示:

.h

#import "FBConnect.h"
...
@interface S3DEngine_EAGLView : UIView <UITextFieldDelegate, FBSessionDelegate>
{   

@public Facebook *facebook;

@private
...
    EAGLContext                    *pEAGLContext                ;
...
}
@property NSTimeInterval iAnimationInterval;
@property(nonatomic, retain) NSMutableDictionary *achievementsDictionary;
@property (nonatomic, retain) Facebook *facebook;
...

.m

@implementation S3DEngine_EAGLView
...
@synthesize facebook;
...
- (void)fbDidLogin {
}
...

最佳答案

如果您将 Facebook 委托(delegate)分配给您的 viewController,它将被触发。这就是我的想法,因为您正在为 Facebook 实例定义一个属性,您是否将其分配给应用程序委托(delegate)中的属性?如果是这样,只需将 Facebook 实现从应用程序委托(delegate)移至您的 viewController。

关于objective-c - 实现 Facebook iOS SDK - 无 "fbDidLogin"回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10163851/

相关文章:

javascript - 如何使用 facebook javascript api 发布自定义帖子

iphone - 如何处理 plist 中的浮点值

ios - 如何使自定义键盘扩展再次成为第一响应者

ios - GPUImage 涂抹工具之类的效果

android - 为 Android、iOS 和 Web 创建 API

ios - 检索 ValueForKey BOOL 值

javascript - Facebook Canvas : redirect_uri is not owned by the application

iphone - 为什么 ViewController 类的单独实例会影响前一个实例?

javascript - 在移动 Chrome 上隐藏键盘不会改变窗口高度

php - 在 Facebook 应用程序中获取好友位置