2010-04-15 2 views
0

내 문제는 this question과 매우 유사하지만 앞에서 설명한 답변이 내 문제를 해결하지 못하는 것 같으므로 새 것을 게시하고 있습니다. 문제.FBConnect for iPhone : sessionDidNotLogin, sessionDidLogout, 세션 didLogin이 뷰를로드 할 때 두 번째 호출되지 않음

나는 다중보기 응용 프로그램을 가지고 있습니다. 첫 번째보기는 사용자가 Facebook에 로그인하는 곳이고 두 번째보기는 사용자가 이미지를 선택하여 거기에 업로드하는 곳입니다. 처음 앱을 실행하면 모든 것이 정상적으로 작동하지만 로그인 화면으로 돌아가서 로그 아웃을 누르면 sessionDidNotLogin, sessionDidLogout 또는 session didLogin에 대한 모든 통화가 작동하지 않는 것 같습니다.

내가 처음 발견 한 경우, 나는 NSLog(@"%@",session.delegates);에 2가있다. 내 LoginViewController 및 FBLoginButton. 그러나 처음부터 동일한 로그는 FBLoginButton이 아닌 LoginViewController 만 인쇄합니다. 나는 이것이 어떻게 든 연결되어 있다고 생각하지만, 그것을 해결하는 방법을 모른다.

세션 위임자에게 수동으로 FBLoginButton을 추가해야합니까, 아니면 여기에 다른 문제가 있습니까?

도움/의견을 보내 주셔서 감사합니다.

답변

0

문제를 발견했습니다. a post from the Facebook developers forum에게 감사드립니다. 뷰가로드 될 때마다 새 세션 인스턴스를 만들었습니다 (비록 싱글 톤이 될 것이라고 생각하고 라이브러리가 처리해야 했음에도 불구하고).

그래서,이 일하게하기 위해 :

fbSession = [FBSession session]; 
    if (!fbSession) { 
    fbSession = [[FBSession sessionForApplication:kApiKey secret:kApiSecret delegate:self] retain]; 
    } else { 
    [[fbSession delegates] addObject:self]; 
    } 
관련 문제