Facebook没有登录我的应用程序

时间:2013-03-04 09:28:01

标签: iphone

您好我在我的应用程序中使用Xcode 4.6中的Xib文件中的相似功能,但点击Facebook不登录。另一方面,当我在故事板中的另一个应用程序中进行登录时,它会登录。如果有人知道,请指导我。

- (id)initWithCoder:(NSCoder *)aDecoder {
    if (self = [super initWithCoder:aDecoder]) {
        _facebook = [[Facebook alloc] initWithAppId:@"129649123867187" andDelegate:self];
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    self.facebookLikeView.href = [NSURL URLWithString:@"http://sis.uol.edu.pk/sis/MainForms/login.aspx"];
    self.facebookLikeView.layout = @"button_count";
    self.facebookLikeView.showFaces = NO;
    //    self.facebookLikeView.alpha = 1;
    [self.facebookLikeView load];
    facebookLikeView.delegate = self;
}

#pragma mark FBSessionDelegate methods

- (void)fbDidLogin {
    self.facebookLikeView.alpha = 1;
    [self.facebookLikeView load];
}

- (void)fbDidLogout {
    self.facebookLikeView.alpha = 1;
    [self.facebookLikeView load];
}

#pragma mark FacebookLikeViewDelegate methods

- (void)facebookLikeViewRequiresLogin:(FacebookLikeView *)aFacebookLikeView {
    [_facebook authorize:[NSArray array]];
}

- (void)facebookLikeViewDidRender:(FacebookLikeView *)aFacebookLikeView {
    [UIView beginAnimations:@"" context:nil];
    [UIView setAnimationDelay:0.5];
    self.facebookLikeView.alpha = 1;
    [UIView commitAnimations];
}

- (void)facebookLikeViewDidLike:(FacebookLikeView *)aFacebookLikeView {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Liked"
                                                    message:@"You liked  my app. Thanks!"
                                                   delegate:self
                                          cancelButtonTitle:@"OK"
                                          otherButtonTitles:nil] ;
    [alert show];
}

- (void)facebookLikeViewDidUnlike:(FacebookLikeView *)aFacebookLikeView {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Unliked"
                                                    message:@"You unliked my app ."
                                                   delegate:self
                                          cancelButtonTitle:@"OK"
                                          otherButtonTitles:nil] ;
    [alert show];
}

1 个答案:

答案 0 :(得分:0)

您的代码似乎没问题,并且您正在使用FacebookLikeView的代码,当我尝试在我的应用程序中实现相同时,它将不会显示登录名,因为我忘了绑定<强烈的> FacebookLikeView 与IB。我遇到的另一个问题是,您可能需要从_facebook = [[Facebook alloc] initWithAppId:@"129649123867187" andDelegate:self]; 方法中删除init行并将其放入viewDidLoad如下所示,因为它不会在我的情况下调用!

if(!_facebook)
{
    _facebook = [[Facebook alloc] initWithAppId:@"129649123867187" andDelegate:self];
}

我相信您不会忘记为FBConnectFacebookLikeViewDelegateFBSessionDelegate

设置委托

如果你仍然无法解决问题,那么可能是你的Facebook App ID尝试使用源代码中给出的默认应用ID,它应该有效!