ios - 한국 - 친구찾기 아이폰



FacebookSDK를 사용하여 iOS에서 상호 친구 목록을 만드는 방법은 무엇입니까? (1)

나는 그래프 API를 따라 갔지만 응답을 얻고있다.

context =     {
    id = dXNlcl9jb250ZAXh0OgGQ2NxhPU1adsVlI9wHXlABJbFICZC9PYfcDq57EiAdimkf6Um0P7dgco2lU1qdiM98jXp5hXpZCVkjBeN0DHCROSZAjio6JAD7gmkIZCqTxVp6dNwZD;
};
id = 1306652987;

}

내 코드는

FBSDKAccessToken *access = [FBSDKAccessToken currentAccessToken];
if (access!=nil)
{
    NSDictionary *params = @{
                             @"fields": @"context.fields(mutual_friends)",
                             };
    /* make the API call */


    FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                                  initWithGraphPath:@"1306652987"
                                  parameters:params
                                  HTTPMethod:@"GET"];
    [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                          id result,
                                          NSError *error) {
        NSLog(@"result %@",result);
        // Handle the result
    }];
}
else
{
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
[login logInWithReadPermissions:@[@"public_profile", @"email",@"user_friends"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
 {
     if (error)
     {
         // Process error
     }
     else if (result.isCancelled)
     {
         // Handle cancellations
     }
     else
     {
         ///me/mutualfriends/[OTHER ID]/?fields=name,picture
         NSDictionary *params = @{
                                  @"fields": @"context.fields(mutual_friends)",
                                  };
         /* make the API call */

         FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                                       initWithGraphPath:@"1306652987"
                                       parameters:params
                                       HTTPMethod:@"GET"];
         [request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                               id result,
                                               NSError *error) {
             NSLog(@"result %@",result);
             // Handle the result
         }];
         if ([result.grantedPermissions containsObject:@"email"])
         {
             NSLog(@"result is:%@",result);
         }
     }
 }];

}

하지만 그래프 API 탐색기에서 상호 친구 이름과 ID 및 상호 친구의 총 수를 올바른 출력을 얻고 있지만 내 코드에서 전체 응답을 얻을 수 없습니다.


나는 똑같은 문제가 있었다. 컨텍스트 ID 대신에 id / user_id를 사용하는 실수를했습니다.

context =     {
    id = dXNlcl9jb250ZAXh0OgGQ2NxhPU1adsVlI9wHXlABJbFICZC9PYfcDq57EiAdimkf6Um0P7dgco2lU1qdiM98jXp5hXpZCVkjBeN0DHCROSZAjio6JAD7gmkIZCqTxVp6dNwZD;
};
id = 1306652987;

그래서 (Swift에서)

 FBSDKGraphRequest(graphPath: "dXNlcl9jb250ZAXh0OgGQ2NxhPU1adsVlI9wHXlABJbFICZC9PYfcDq57EiAdimkf6Um0P7dgco2lU1qdiM98jXp5hXpZCVkjBeN0DHCROSZAjio6JAD7gmkIZCqTxVp6dNwZD", parameters: nil).startWithCompletionHandler({ (connection, result, error) -> Void in
        if (error == nil){
            //everything works print the user data
            print(result)
        }  else {
            print(error.description)
        }
    })

또한! 상호 친구는 앱에 로그인하고 "user_friends"에 대한 앱 권한이 있어야합니다.

로그인 정보는 다음과 같습니다.

 let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
    fbLoginManager.logOut()
    fbLoginManager.logInWithReadPermissions(["email", "user_friends"], fromViewController: self) { (result, error) -> Void in
        if (error == nil){
            let fbloginresult : FBSDKLoginManagerLoginResult = result
            if(fbloginresult.grantedPermissions.contains("email"))
            {
                self.getFBUserData()
            }

        } else {
            print(error.description)
        }
    }