![](/img/trans.png)
[英]Fetch Facebook logged-in user's Interest using Facebook iOS SDK API v2.4
[英]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.