2016-06-14 4 views
0

Swift를 사용하여 iOS 앱용 Facebook에서 콘텐츠를 공유하고 있습니다.iOS의 Facebook SDK 공유가 작동하지 않습니다.

FBManager라는 싱글 톤 클래스와 다음과 같은 함수를 작성했습니다.

func shareContent(content:String, contentURL:String?, contentTitle:String? , fromController controller:UIViewController { 
     let shareDialog = FBSDKShareDialog() 
     let shareLinkContent = FBSDKShareLinkContent() 

     shareLinkContent.contentDescription = content 

     if let url = contentURL 
     { 
      shareLinkContent.contentURL = NSURL(string: url) 
     } 

     if let title = contentTitle 
     { 
      shareLinkContent.contentTitle = title 
     } 

     shareDialog.delegate = self 
     shareDialog.fromViewController = controller 
     shareDialog.shareContent = shareLinkContent 
     shareDialog.show() 
    } 

그러나이 경우에도 아이폰 OS 8 및 아이폰 OS 9에서 모두 공유 대화 상자를 표시하지 않는 대신 다음 대리자 메서드는 오류

func sharer(sharer: FBSDKSharing!, didFailWithError error: NSError!) { 
} 

을 호출되는 - "작업이 수 없습니다 완료. (com.facebook.sdk.share 오류 2) "

누군가가 도와 주실 수 있습니까?

답변

0

Facebook SDK의 오류 코드는 다소 큰 오류 영역을 다루기 때문에 다소 모호합니다. 제공 한 코드는 실제로 변수의 내용을 표시하지 않으므로 문제를 정확하게 지적 할 수 없습니다. 그러나 com.facebook.sdk.share error 2은 일반적으로 FBSDKShareLinkContent 하나 명 이상의 멤버의 형식이 잘못에서 발생 잘못된 인수 오류이다.

일반적으로 FBSDKErrorCode 열거 형을 사용하여 (error as NSError).code을 전환하고 속한 도메인을 찾을 수 있습니다. (이 경우 잘못된 인수를 가리 킵니다.)

print(error)didFailWithError 대리자 메서드에서 직접 처리 할 수 ​​있습니다. 그러면 매우 자세한 설명 로그와 그 원인을 알기 쉽게 표시 할 수 있습니다.

contentURL을 확인하고 http:// 또는 https:// 또는 다른 유효한 프로토콜로 시작하는지 확인하십시오. 사용 중이거나 사용하려는 경우 imageURL과 동일합니다. 이것은 당신의 오류를 일으켰을 가능성이 큽니다!

The SDK's error codes reference

도 도움이 될 수 있습니다.

관련 문제