在iOS中抓取Facebook好友时出错

我试图获取login用户的Facebook好友列表,它在我的帐户中工作正常,但是当我将应用程序的详细信息迁移到一个新的帐户,并更改应用程序ID和应用程序的秘密我收到以下错误

Error Domain=com.facebook.sdk Code=5 "The operation couldn't be completed. (com.facebook.sdk error 5.)" UserInfo=0xf89c0b0 {com.facebook.sdk:HTTPStatusCode=400, com.facebook.sdk:ParsedJSONResponseKey={ body = { error = { code = 100; message = "(#100) Unknown fields: username."; type = OAuthException; }; }; code = 400; }, com.facebook.sdk:ErrorSessionKey=<FBSession: 0xe5a6c30, state: FBSessionStateOpen, loginHandler: 0xe58d5a0, appID: 705259966179163, urlSchemeSuffix: , tokenCachingStrategy:<FBSessionTokenCachingStrategy: 0xf87b180>, expirationDate: 4001-01-01 00:00:00 +0000, refreshDate: 2014-05-20 07:14:50 +0000, attemptedRefreshDate: 0001-12-30 00:00:00 +0000, permissions:( status, permission )>} 

这是我当前获取朋友的代码

 - (BOOL)retrieveFacebookFriendsForProfileId:(NSString *)fbProfileId completionBlock:(void (^)(NSArray *, NSError *))completionBlock { [FBSession openActiveSessionWithReadPermissions:nil allowLoginUI:YES completionHandler:^(FBSession *session, FBSessionState state, NSError *error) { if (error) { NSLog(@"Error"); } else if (session.isOpen) { [[FBRequest requestForMe] startWithCompletionHandler: ^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) { if (error) { //Throws the code 100 error here completionBlock(nil, error); }else{ FBRequest* friendsRequest = [FBRequest requestForMyFriends]; [friendsRequest startWithCompletionHandler: ^(FBRequestConnection *connection,NSDictionary* result,NSError *error) { if(error) completionBlock(nil, error); else { NSArray *friendJSONs = [result objectForKey:@"data"]; NSMutableArray *friends=[NSMutableArray array]; for(NSDictionary * friendDict in friendJSONs) { SocialProfile *friend=[[SocialProfile alloc] initWithDictionary:friendDict socialMedia:kSocialMediaFacebook]; [friends addObject:friend]; } completionBlock(friends, nil); } }]; } }]; } }]; return YES; } 

这个代码工作正常,如果我使用我的旧应用程序ID和密码。 我检查了新帐户中的设置,所有内容与我在旧帐户中所做的一样,我不明白是什么问题。 任何帮助表示赞赏

根据https://developers.facebook.com/docs/apps/changelog朋友列performance在只返回也使用你的应用程序的朋友:通过/我/朋友端点返回的朋友列performance在限于朋友列表已授权您的应用程序&#x3002;

所以我改变了我的上面的代码,这给了我使用应用程序的朋友,而不是整个FB的朋友名单的列表

 FBRequest *friendsRequest = [FBRequest requestForGraphPath:@"/me/friends"];