2013-07-06 1 views
7

'publish_actions'권한으로 Facebook에 로그인하는 코드가 있습니다. 메소드가 실행되면Facebook iOS SDK : publish_actions를 요청할 때 SKIP 버튼을 처리하는 방법은 무엇인가요?

NSArray *facebookPermissions = [NSArray arrayWithObjects:@"publish_actions", nil]; 

[FBSession openActiveSessionWithPublishPermissions:[self facebookPermissions] 
            defaultAudience:FBSessionDefaultAudienceFriends 
             allowLoginUI:YES 
           completionHandler:^(FBSession *session, FBSessionState state, NSError *error) { 
    NSLog(@">>> Permissions available: %@", FBSession.activeSession.permissions); 
}]; 

, 사용자가 모바일 사파리 페이스 북 페이지로 리디렉션 및 페이스 북이 그/그녀의 계정에 액세스 할 수 있는지 여부를 묻는 메시지가 표시됩니다 : 여기에 코드 조각입니다.

화면 1 :

APPNAME would like to access your public profile and friend list. 
[CANCEL] [OK] 

우리가 openActiveSessionWithPublishPermissions 방법을 사용하기 때문에, 두 번째 페이지는 페이스 북이 사용자를 대신하여 물건을 게시 할 수 있는지를 묻는 나타납니다, 확인을 누른 후.

화면 2 : 사용자가 클릭 버튼을 SKIP 때

APPNAME would like to post to your friends on your behalf. 
[AUDIENCE] [SKIP] [OK] 

까다로운 부분은, 콜백의 로그는 여전히 사용할 수있는 권한 중 하나 'publish_actions' 나열합니다. 어떤 잘못된 것입니다. error도 0입니다. 어떻게 제대로 감지합니까? 사전에

2013-07-06 16:35:59.037 FbSandbox[56213:c07] >>> Permissions available: ("publish_actions") 

감사 :

이 로그입니다!

답변

3

허용 된 사용 권한의 유효성을 callingme/permissions으로 확인할 수 있습니다. 그러면 사용자가 허용 한 권한이 나열됩니다. 요청한 권한으로이 목록을 상호 참조하면 허용 된 항목과 건너 뛴 항목을 찾을 수 있습니다.

+0

이것은 대답 인 것 같습니다. 절대적으로 끔찍한 API 디자인. –