簡體   English   中英

iOS-Facebook SDK v.4.5.1-獲取用戶名和電子郵件

[英]iOS - Facebook SDK v.4.5.1 - fetch user name and email

我正在將Facebook登錄信息集成到我的應用中。 SDK已完美安裝-我已經測試了所有內容。 我也可以登錄並完美注銷。 但現在最重要的部分是:我不知道如何獲取所需的數據(用戶名,電子郵件地址等)。

我目前在頭文件中聲明LoginButton。

@property (strong, nonatomic) IBOutlet FBSDKLoginButton *loginButton;

然后在我的主文件中有這個:

    loginButton = [[FBSDKLoginButton alloc] init];
loginButton.delegate = self;
loginButton.readPermissions =
@[@"public_profile", @"email", @"user_friends"];
[self.view addSubview:loginButton];

我還實現了我需要的兩種方法-並且它們被正確調用。

    - (void)  loginButton:  (FBSDKLoginButton *)loginButton
didCompleteWithResult:  (FBSDKLoginManagerLoginResult *)result
                error:  (NSError *)error{

    NSLog(@"facebook login button test");



}
- (void) loginButtonDidLogOut:(FBSDKLoginButton *)loginButton{
    NSLog(@"facebook logout button test");
}

你下一步怎么做? 所有在線教程都已過時或在Swift中。 我主要需要知道用戶的姓名,電子郵件以及他是否登錄(稍后再說)。

非常感謝。

您可以從以下方法獲取它。

- (void)getFacebookData{
    if ([FBSDKAccessToken currentAccessToken]) {
        [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields": @"first_name, last_name, picture.type(large), email, name, id, gender"}]
         startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
             if (!error) {
                 NSLog(@"fetched user:%@", result);
             }
         }];
    }
}

然后按以下方式調用此方法。

- (void)  loginButton:  (FBSDKLoginButton *)loginButton
didCompleteWithResult:  (FBSDKLoginManagerLoginResult *)result
                error:  (NSError *)error{

    NSLog(@"facebook login button test");

   [self getFacebookData];

}

通過這種方式,您可以獲得有關用戶的所有信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM