2013-02-12 6 views
1

2 일 동안 내 문제에 대한 해결책을 찾으려고합니다. 그리고 나는 당신이 나에게 링크를 줄 수있는 모든 자원을 읽은 것을 확신하고 있다고 말하고 싶다. =) 문제는이다. iOS 용 FacebookSDK 3.1을 사용하고 있습니다. 그리고 apprequests 대화 상자를 만들려고 노력 ... 코드는 간단하다IOS FacebookSDK apprequests 대화 오류

session =[[FBSession alloc]initWithAppID:@"XXXXXXXXXXXX" permissions:nil urlSchemeSuffix:@"xxxxxxxxxxxx" tokenCacheStrategy:nil]; 
    [FBSession setActiveSession:session]; 
     [self ShowSessionState:session.state]; 
     NSLog(@"Acces token data: %@",[session accessToken]); 

     [session openWithCompletionHandler:^(FBSession *psession, FBSessionState status, NSError *error) { 
     // NSLog(@"I'm in"); 

     Facebook * facebook = [[Facebook alloc] initWithAppId:@"XXXXXXXXXXXX" urlSchemeSuffix:@"xxxxxxxxx" andDelegate:nil]; 

       [facebook setAccessToken:FBSession.activeSession.accessToken]; 
       [facebook setExpirationDate:FBSession.activeSession.expirationDate]; 

       [facebook dialog:@"apprequests" andDelegate:nil]; 

      }]; 

그리고 모든 내가 무엇을보고 .. 바로 오류 프레임 - API 오류 코드 : 110; API 오류 설명 : 잘못된 사용자 ID입니다. 오류 메시지 : 사용자 쿠키가 누락되었습니다 (세션 사용자의 유효성을 검사하기 위해). 하지만 인증에 성공했습니다 ... 유효한 accessToken .. 내 친구 또는 내 FB 데이터를 가져올 수 있습니다.

많은 리소스를 읽었습니다 .... 그리고 실제로 많은 사람들이 동일한 문제가 있지만이 문제에 대한 유용한 해결책을 찾지 못했습니다. 도와 줘, 제발.

답변

0

나는 해결책을 찾았습니다. 누군가 도움이 될 수도 있습니다. 실제로 그것은 엑소시즘처럼 보이지만 작동합니다) 문제는 다음과 같습니다. safari 또는 Facebook 앱에서 페이스 북에 로그인 한 경우 webview는 쿠키를 저장하지 않으므로 webview에서 로깅해야합니다. FBConnect 패키지로 할 수 있습니다 (Google에서 자세히 읽으십시오). 당신이

[facebook authorize:permissions]; 

로그인을 사용할 때

[self authorizeWithFBAppAuth:YES safariAuth:YES]; 

[self authorizeWithFBAppAuth:NO safariAuth:NO]; 

에이 경우 웹보기에 항상 와서 당신이 할 수있는 : Facebook.m에서이 같은 코드를 변경해야 할 파일 apprequests 등과 같은 대화 상자를 사용하십시오. 더 많은 문제)) 로그인 대화 상자가 나타나지 않습니까? 더 많은 Facebook 버그가 있습니다.)이 문제를 해결하려면 다음과 같이하십시오.

[self performSelector:@selector(showFBLoginDialog) withObject:nil afterDelay:1]; 

- (void)showFBLoginDialog { 
    NSArray *permissions = [[NSArray alloc] initWithObjects: 
          @"offline_access", 
          @"publish_actions", 
          @"read_stream", 
          @"user_photos", 
          @"email", 
          @"publish_stream", 
          @"user_likes", 
          @"user_about_me", nil]; 
    [facebook authorize:permissions];  
} 
관련 문제