objective-c - Facebook SDK IOS登录问题

标签 objective-c ios facebook

我已按照说明从我的应用程序实现到 Facebook 的登录过程:

https://developers.facebook.com/docs/mobile/ios/build/#implementsso

这是我的代码:

- (IBAction)facebookButton:(id)sender {

    facebook = [[Facebook alloc] initWithAppId:@"383032031757454" andDelegate:self];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    if ([defaults objectForKey:@"FBAccessTokenKey"] 
        && [defaults objectForKey:@"FBExpirationDateKey"]) {
        facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
        facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
    }

    if (![facebook isSessionValid]) {
        NSArray *permissions = [[NSArray alloc] initWithObjects:
                                @"user_likes", 
                                @"read_stream",
                                nil];
        [facebook authorize:permissions];
        permissions=nil;
    }    
}

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    return [facebook handleOpenURL:url]; 
}

- (void)fbDidLogin {
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
    [defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
    [defaults synchronize];

}

登录并允许应用程序权限后,Safari 保持打开状态,我必须手动返回到我的应用程序,但是 SDK 提供的示例应用程序“Hackbook”在接受权限并在 Safari 中登录后,它关闭 Safari 并返回回到应用程序。我也想这样做,但没有成功。

这是 .plist 文件:

enter image description here

谢谢

最佳答案

您是否在 iOS 应用的 info.plist 文件中设置了您的 facebook 应用 ID?

类似案例在this linkthis link . 希望对您有所帮助。

关于objective-c - Facebook SDK IOS登录问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11292418/

相关文章:

ios - 归档应用程序时 Xcode 提示丢失文件

objective-c - 如何在 OS X 中成功删除钥匙串(keychain)中的项目?

iphone - App Store 发布新更新/版本时如何通知用户?

ios - Phonegap 混合音频文件

ios - openfire 中需要哪些插件才能进行聊天

c# - 在 MonoTouch 中绑定(bind) NSArray

ios - didRegisterForRemoteNotificationsWithDeviceToken 从未在特定设备上调用

javascript - 在 Facebook 上发送私信

javascript - Facebook API - 添加新照片 (Javascript sdk)

iPhone 应用程序发送 Facebook 消息或张贴到 friend 的墙上