2016-10-30 3 views
1

에서 전자 메일을 검색하는 방법 참고 : 중복으로 닫지 마십시오. Stackoverflow의 거의 모든 기존 스레드를 거쳤지만 문제는 해결되지 않았습니다.Facebook SDK

이 최신 페이스 북 SDK 내 스위프트 3 기능입니다 :

let req = FBSDKGraphRequest(graphPath: "me", parameters: ["fields":"email,name"], tokenString: token?.tokenString, version: nil, httpMethod: "GET") 
_ = req?.start(completionHandler: { (connection, result, error : Error?) -> Void in 

    if(error == nil) { 
     print("result \(result)") 
    } else { 
     print("error \(error!)") 
    } 
}) 

결과 :

result Optional({ 
    id = 102080884567XXXXX; 
    name = "David Seek"; 
}) 

이 이메일 권한이 승인 :

enter image description here

또한 앱은 라이브 모드에 있습니다

enter image description here

나는 reference guide을 확인했다,하지만 난 내 실수를 찾을 수 없습니다.

내 문제는 내 이메일 주소가으로 백엔드에 facebookID를 저장하고 있는데 그 이유를 파악하려고하는 것입니다. 따라서 위에 제공된 코드를 사용해 보았습니다. 이메일을받는 중.

let result = FBSDKApplicationDelegate.sharedInstance().application(application, 
                    open: url, 
                    sourceApplication: sourceApplication, 
                    annotation: annotation) 
if result { 

    let token = FBSDKAccessToken.current() 
    let fieldsMapping = [ 
     "id" : "facebookId", 
     "name" : "name", 
     "birthday": "birthday", 
     "first_name": "fb_first_name", 
     "last_name" : "fb_last_name", 
     "gender": "gender", 
     "email": "email" 
    ] 

    backendless?.userService.login(withFacebookSDK: token, fieldsMapping: fieldsMapping, response: { (user: BackendlessUser?) in 

    }, error: { (fault: Fault?) -> Void in 
     print("Server reported an error: \(fault)") 
    }) 
} 
내가 모든 정보하지만 이메일을 수신하고있어

...

나는 무엇을 놓치고? 도움말은 매우 감사하겠습니다.

+0

_ 이메일 권한이 부여되었습니다. "_ - 그 스크린 샷과 다릅니다. _approved_는 앱이 사용자에게 앱을 요청했음을 의미합니다. 하지만 여전히 묻고 싶습니다. 액세스 토큰을 디버깅하거나/me/permissions에 대한 호출을 통해 성공적으로 문제가 발생했는지 확인합니다. – CBroe

+0

알겠습니다. '나를 통해/me/permissions'에 대한 자세한 내용을 말해 줄 수 있습니까? 그 동안 액세스 토큰을 디버그 할 것입니다. –

+0

괜찮습니까? 토큰? .hasGranted ("email")'false '를 인쇄합니다. –

답변

2

이메일 권한이 부여됩니다

을 그 무엇 스크린 샷 쇼되지 않았는지 확인합니다. 그것은 승인 된임을 나타내며, 귀하의 앱이 일 수 있음을 의미합니다.에게 사용자에게 요청합니다. 하지만 여전히 에게 문의해야합니다. 어느 액세스 토큰을 디버깅에 의해, 또는 당신은 로그인시 권한을 사용자에게 요청해야 /me/permissions

에 대한 API 호출을 통해 -

만들기 확실히 성공적으로 무슨 일이 생긴 것을.

+0

도움 주셔서 감사합니다. –