2013-01-17 1 views
7
안드로이드

에 대한 페이스 북 SDK의 새로운 3.0 버전에 로그인 할 수 없습니다. 먼저 새 액세스 토큰을 얻기를위한 실제 세션 토큰 두 번째 파괴,이전 <em>페이스 북</em> 클래스를 deprecates과 <em>세션</em> 클래스를 사용하여 로그인하는 새로운 방법을 소개 나는 페이스 북 SDK (3.0)의 새로운 버전이의 볼

public class MainActivity extends Activity { 

private Session mFacebookSession; 

private StatusCallback fbStatusCallback = new StatusCallback() { 
    @Override 
    public void call(Session session, SessionState state, Exception exception) { 
     Log.v("dbg", "state: " + state); 
     Log.v("dbg", "session: " + session); 
    } 
}; 

public void bc(View view) 
{ 
    mFacebookSession = Session.openActiveSession(this, true, fbStatusCallback); 
} 
//etc.. 
} 

콜백 두 번 전화를받을해야합니다

나는 빨리 새 로그인 API를 사용하여 간단한 응용 프로그램을 썼습니다. 물론 내 앱 ID는 매니페스트 파일 등의 메타 데이터로 설정됩니다.

코드를 실행하면 Facebook 로그인 대화 상자가 나타나고 사용자 이름과 비밀번호를 입력 한 다음 닫습니다.

하지만, 내 로그에 I는이를 참조하십시오

01-17 03:28:01.587: V/dbg(7002): state: OPENING 
01-17 03:28:01.587: V/dbg(7002): session: {Session state:OPENING, token:{AccessToken token:ACCESS_TOKEN_REMOVED permissions:[]}, appId:xxxxxxxxxxxxxxx} 

을 그 결과, 나는 빈 문자열 (null이 아닌)을 얻을 mFacebookSession.getAccessToken()를 호출하려고하면.

무엇이 문제입니까?

I 해결 방법 본 (이상) 내가 onActivityResult를 재정의하고 Session.getActiveSession는 onActivityResult() 한

(이, requestCode가,의 resultCode, 데이터).;

+1

이 APPID가 정확하고 100 % 확신을 야기 다른 것은 키 해시했다 Sterpu 미하이의 경우 잘못 사용하면 페이 스북 앱을 올바르게 설정 했습니까? 나는 비슷한 문제가 있었고 다른 페이스 북 앱의 ID를 사용하여 내게왔다. – seaplain

+0

글쎄, 로그인 대화 상자에 내 애플리케이션 이름이 표시되고 일부 권한을 추가하면 (내가 추가 할 수있는 방법도 있지만 포함되지 않았다. 이 코드에서는 모든 사람들이 이해할 수 있도록 간단하게 유지함), 올바르게 표시됩니다. –

+0

흠 .. 이제는 * 기본 Android 앱 섹션에서 해시를 넣지 않았 음을 알았습니다. 그렇다면 콜백을 통해 예외가 발생하지 않는 이유는 무엇입니까? –

답변

1

임 그냥 다른 사람을 위해 여기를 넣어 것 :

페이스 북 SDK 당신이 뭔가를 잊어 버린 알려 주셔서 정말 끔찍하다. 작동하지 않는 경우 Facebook 앱을 다시 확인하고 무언가를 잊어 버리거나 잘못된 값을 입력하지 않았는지 확인하십시오. 내 경우에는 APPID는

+0

해시가 뭔지 모르겠다. 테스트하지 않았다. 내가 아는 업데이트를 게시 할 것이다. –

+0

포럼에서도 발견 : * 안드로이드 용 해시 키를 얻을 수 없었다. 하지만 페이 스북 어느 쪽이든 작동하는 것 같습니다 * :) –