我按照 facebook 开发文档的官方指南从我的 iphone 应用程序实现 SSO, 但所有人都在同一个 View Controller 中,他们持有“Facebook”类的信息。 现在考虑我想登录一个导航 Controller 的第一个 View Controller ,然后从同一个导航 Controller 的第三个 View Controller 调用图形 api。 我想我可以将变量从一个 Controller 共享到另一个 Controller ,但我想知道是否有一些“经典”方法可以实现这一点。事实上,我希望通过以下方式完成: 在应用程序开始时,我希望登录,然后在我的应用程序中需要的任何地方调用 graph api(或 fql)。
谢谢
最佳答案
我刚刚这样做了:
在 YourApp_AppDelegate.h 中
#import "FBConnect.h"
Facebook *facebook;
@property (nonatomic, retain) Facebook *facebook;
在 YourApp_AppDelegate.m 中
@synthesize facebook;
然后在你的应用程序中 didFinishLaunchingWithOptions: 函数:
facebook = [[Facebook alloc] initWithAppId:@"YOUR_FACEBOOK_API"];
从您的 viewController.h(其中任何一个)
#import "YourApp_AppDelegate.h"
YourApp_AppDelegate *appDelegate;
然后,在您的 viewController.m viewDidLoad 函数中:
appDelegate = (YourApp_AppDelegate *)[[UIApplication sharedApplication] delegate];
现在,任何时候你想引用你的 Facebook 单例,就像这样引用它:
[appDelegate.facebook authorize:nil delegate:self];
关于Facebook iOs SDK iphone : Call from multiple viewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5340375/