18

iOS 기본 제공 프레임 워크를 사용하여 연결합니다."앱이 설치시 기본 읽기 권한을 요청해야합니다."

Error Domain=com.apple.accounts Code=7 "The Facebook server could not fulfill this access request: The app must ask for a basic read permission at install time." UserInfo=0x145ad6a0 {NSLocalizedDescription=The Facebook server could not fulfill this access request: The app must ask for a basic read permission at install time.} 

이 무슨 일 것입니다 : "publish_stream" 권한을 요청하면, FB는 오류를 반환? 두 가지 사용자 권한 팝업 표시가 이상적인 사용자 환경입니다.

답변

17

처음으로 읽기 권한을 요청해야합니다. 모든 유형의 게시/쓰기 권한으로 사용자를 초기 인증 할 수는 없습니다. 그 후에해야 할 일은 앱에서 의미가있는 곳에서 publish_stream 권한을 요청하는 것입니다. 확실히 초기 허가를하지 말고 즉시 publish_stream 허가를 요청하십시오.

이 메모를 https://developers.facebook.com/docs/tutorial/iossdk/upgrading-from-3.0-to-3.1/에서 읽으십시오. "읽으려면 & 쓰기 권한을 별도로 지정하십시오."를 참조하십시오. iOS 용 Facebook SDK에도 적용되지만 기본 제공 프레임 워크에서 동일한 요구 사항을 확장 한 것입니다.

+0

@ "user_about_me"이 오류가 발생했습니다. 뭐가 문제 야 ?? – Stas

+0

이 오류가 발생하면 user_about_me 만 요청 하시겠습니까? 또한 사용중인 코드를 제공하면 도움이됩니다. –

+0

덕분에 문제가 이미 해결되었습니다. Facebook에 약간의 지연이있었습니다. – Stas

5

나는 페이스 북 문서의 추가 경고가 있음을 추가하고 싶습니다 :이 작업을 수행하는

// if a user has *never* logged into your app, you MUST include one of 
// "email", "user_location", or "user_birthday". Other read 
// permissions can also be included here. 

않으면 동일한 오류로 이어집니다.

4

최신 SDK (v3.5)에서는 권한 배열에 @ "basic_info"도 전달해야합니다. 이전에는 암시 적 이었지만 더 이상은 아닙니다. 당신이하지 않으면, 당신은 방법 워드 프로세서에서 메시지

[FBSession openActiveSessionWithReadPermissions:@[@"email", @"basic_info"] 
           allowLoginUI:YES 
          completionHandler:^(FBSession *session, FBSessionState state, NSError *error) { 
           [self sessionStateChanged:session state:state error:error]; 
          }]; 

은 "이 앱은에서 설치시 기본 읽기 권한을 요청해야한다"얻을 것이다 : 나는 대한 부탁 해요

readPermissions - An array of strings representing the read permissions to request during the authentication flow. The basic_info permission must be explicitly requested at first login, and is no longer inferred, (subject to an active migration.) It is not allowed to pass publish permissions to this method.