2011-03-16 5 views
2

iOS 기기 용으로 만든 앱과 Facebook 연결을 구현하려고합니다. 나는 열쇠에 대한 모든 지시를 따라 왔고, SDK는 작동하지만 한가지 경고를받습니다. 그것은 FBSessionDelegate 프로토콜을 구현하지 않는다고 말합니다. 시뮬레이터에서 디버깅하는 동안 앱 자체에서 수행하는 대신 사파리로 이동하여 FB에 로그인합니다. FBSessionDelegate가 이에 대한 책임이 있습니까? 그렇다면 앱에서 모든 작업을 수행 할 수 있도록 어떻게 얻습니까?xcode에서 FBSessionDelegate 프로토콜 구현

답변

0

최신 FBConnect SDK는 OAuth를 단독으로 관리하는 업무를 수행합니다. 로그인하면 Safari의 Facebook Connect 페이지로 연결됩니다. this 스레드

+0

감사합니다 친구, 내가 찾은 대부분의 도움 FBConnect의 오래된 방법을 사용하고 그것은 현 sdk와 올바른 방법을 알아내는 혼란스러워진다 –

+0

왜 샘플 응용 프로그램 현재 sdk 도움을 얻지 마십시오 . 거의 모든 기본적인 것들을 다루고 있습니다. – Vin

3

Facebook.h에 정의 된대로 FBSessionDelegate 프로토콜의 메소드를 구현 했습니까?

@protocol FBSessionDelegate <NSObject> 
@optional 
- (void)fbDidLogin; 
- (void)fbDidNotLogin:(BOOL)cancelled; 
- (void)fbDidLogout; 
@end 

그것은 먼저 위임 경고를 해결하려면 아마 좋은 생각

[facebook authorize:permissions delegate:<delegate object>]; 

delegate에 할당 된 객체에 구현해야합니다.

+0

그게 내 문제일지도 몰라. 나는 인터넷 검색을 해왔고 많은 사이트에서 FBConnect를 구현하는 오래된 방법만을 보여 주었다. –

0

FBSessionDelegate는이 문제에 대해 책임을지지 않습니다. iOS SDK는 FB 앱을 시작할 수없는 경우 Safari로 대체됩니다. 이 방법에 Facebook.m에서 :

// If the device is running a version of iOS that supports multitasking, 
    // try to obtain the access token from the Facebook app installed 
    // on the device. 
    // If the Facebook app isn't installed or it doesn't support 
    // the fbauth:// URL scheme, fall back on Safari for obtaining the access token. 
    // This minimizes the chance that the user will have to enter his or 
    // her credentials in order to authorize the application. 

이 댓글이 사파리 대신 FB 앱의 사용되는 이유를 설명합니다

- (void)authorizeWithFBAppAuth:(BOOL)tryFBAppAuth 
        safariAuth:(BOOL)trySafariAuth 

는 ...이 댓글이 있습니다.

  1. 시뮬레이터는 이 멀티 태스킹을 지원하는 장치입니까?

  2. 시뮬레이터에 FB App 이 설치되어 있습니까?

  3. FB 앱이 최신 버전입니까? (가 fbauth을 지원하는지 확인합니다 : // 체계) dfrdmn 설명으로

FBSessionDelegate은, 3 이미 발생한 모든이 FB 또는 Safari로 리디렉션 후에 호출을받는 메소드 따라서 ISN을 구현 귀하의 문제에 기여하지 못했습니다.

경고를 없애기 위해해야 ​​할 일이 몇 가지 있습니다.

- .h 파일에서 FBSessionDelegate를 구현해야합니다.

@interface AppDelegate : NSObject <FBSessionDelegate> 

- .h 파일에서 #import "Facebook.h"를 확인하십시오. @class Facebook을 사용하면 작동하지 않습니다.

+0

답변 해 주셔서 감사합니다. 최신 Facebook SDK는 인증을 위해 FB 앱을 사용하거나 Safari를 사용하려고합니다. 나는 그것을 장치에서 테스트하지 않았으므로 항상 인증을 위해 Safari로 다시 떨어졌습니다. 기기에서 테스트 해 보면 인증을 위해 FB 앱으로 되돌아갑니다. 모든 지원 담당자에게 감사드립니다. –

관련 문제