簡體   English   中英

用戶朋友在Facebook Sdk Graph Api v2中顯示空白列表

[英]User friends are showing empty list in Facebook Sdk Graph Api v2

我已經將圖表Api的版本更新為v2 現在我面臨的問題是,當我執行以下代碼時,它顯示了空數組:

FBRequest *friendsRequest = [FBRequest requestForMyFriends];
        [friendsRequest startWithCompletionHandler:^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *result, NSError *error) {
            NSArray *friendshipid;
            NSString *username;
            if (!error) {
                NSLog(@"friends = %@", [result description]);

            }
            if (completion) {
                completion(friendshipid, username, error);
            }
        }];
    }
}

我知道facebook sdk為用戶朋友做了一些更改,現在它必須獲得user_friends的許可 ,但是我不知道在哪里進行更改以請求user_friends的 許可

您可以使用給定的代碼段。 在這里,我使用了“ Social Framework類”來獲取Facebook friends 希望它對您有用。

- (void) connectWithFacebookFriends
{
    ACAccountStore *accountStore = [[ACAccountStore alloc] init];

    ACAccountType *accountTypeFacebook = [accountStore accountTypeWithAccountTypeIdentifier:
     ACAccountTypeIdentifierFacebook];

    NSDictionary *options = @{ACFacebookAppIdKey: kFaceBookId,
                              ACFacebookPermissionsKey: @[@"user_friends"],
                              ACFacebookAudienceKey: ACFacebookAudienceFriends
                              };

    [accountStore requestAccessToAccountsWithType:accountTypeFacebook
                                          options:options
                                       completion:^(BOOL granted, NSError *error)
    {
        if(granted) {

            NSArray *accounts = [accountStore
                                 accountsWithAccountType:accountTypeFacebook];
            ACAccount* facebookAccount = [accounts lastObject];
            NSString *acessToken = [NSString stringWithFormat:@"%@",facebookAccount.credential.oauthToken];
            NSDictionary *parameters = @{@"access_token": acessToken};

            NSURL *feedURL = [NSURL URLWithString:@"https://graph.facebook.com/me/friends"];

            SLRequest *feedRequest =
            [SLRequest requestForServiceType:SLServiceTypeFacebook
                               requestMethod:SLRequestMethodGET
                                         URL:feedURL
                                  parameters:parameters];

            [feedRequest performRequestWithHandler:^(NSData *responseData,
                                         NSHTTPURLResponse *urlResponse, NSError *error)
             {

                 NSString * str = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
                 DLog(@"%@",str);


                 NSLog(@"Request failed, %@", [urlResponse description]);
             }];
        } else {
            NSLog(@"Access Denied");
            NSLog(@"[%@]",[error localizedDescription]);

        }
    }];

}

暫無
暫無

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

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