我有一个最新的iOS SDK的问题。我成功登录并且应用程序返回,但像fbDidLogin等委托方法不会被调用。Facebook api ios-sdk,代表不工作,fbDidLogin不叫
如果在没有任何控制器的情况下只在一个代理文件中尝试完成,并使其工作。但如果我有几个控制器,它不工作了/
我用我自己写的类FacebookFetchter
来处理Facebook。
//FacebookFetchter.h
#import Foundation/Foundation.h>
#import "FBConnect.h"
@interface FacebookFetchter : NSObject <FBDialogDelegate,FBSessionDelegate,FBRequestDelegate> {
Facebook *facebook;
FacebookFetchter *facebookFetcher; }
@property (nonatomic, retain) IBOutlet UIWindow *window; @property (retain) Facebook *facebook; @property (retain) FacebookFetchter
*facebookFetcher; @end
// FacebookFetchter.m
#import "FacebookFetchter.h"
@implementation FacebookFetchter @synthesize facebookFetcher,facebook;
-(void)login{
NSLog(@"facebook login...");
facebook = [[Facebook alloc] initWithAppId:@"..."]; //took the id out
NSArray *permissions = [[NSArray arrayWithObjects:
@"read_stream", @"offline_access", @"user_photos", @"user_photo_video_tags" , @"friends_photo_video_tags", @"friends_photos",@"friends_about_me",@"user_about_me",@"manage_friendlists",@"read_friendlists",@"user_birthday",@"friends_birthday", nil] retain];
[facebook authorize:permissions delegate:self];
}
...
-(void)fbDidLogin {
NSLog(@"Erfolgreich eingeloggt...."); } ...
@end
在我委托我实现了这一点,我还设置了与fbapp_id URL方案的plist
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
NSLog(@"AppDelegate handleOpenURL");
return [[[settings facebookFetcher] facebookFetcher] handleOpenURL:url];
}
有设置为我的视图控制器:
//settings.h @interface Settings : UIViewController {
FacebookFetchter *facebookFetcher;
//Facebook *facebook; }
@property (retain) FacebookFetchter
*facebookFetcher;
- (IBAction)sync; @end
//settings.m @synthesize facebookFetcher;
//within this action the facebook login is called
- (IBAction)sync{
NSLog(@"sync...");
facebookFetcher = [[FacebookFetchter alloc] init];
[facebookFetcher login]; }
有什么建议?
谢谢!
你发现这是为什么发生?我有同样的问题。 fbDidLogin方法没有被调用 – Jayshree 2011-03-21 09:09:23
删除我的答案 - 你的' - (BOOL)应用程序:(UIApplication *)应用程序handleOpenURL:(NSURL *)url'方法被调用?断点。 – 2011-03-31 20:25:19
这种方法不是在我的身边叫同样的情况 – 2011-05-12 13:52:01