2013-01-18 1 views
3

facebook android sdk를 사용하여 사용자의 Facebook 앨범에 액세스하고 인턴이 사진을 가져옵니다. 그러나 "https://graph.facebook.com/"+wallAlbumID+"/photos?access_token="+facebook.getAccessToken()을 입력하면 빈 데이터가 반환됩니다.안드로이드에서 어떻게 facebook 앨범 사진을 얻을 user_photos 권한을 추가 할 수 있습니까?

{ "data": [] } 나는 in stackoverflow question 또한 페이스 북의 개체를 만드는 동안 나는 user_photos 권한을 부여 할 필요가 in Graph API for Photo를 참조하십시오. 나는 그렇게하는 법을 모르겠다. 나는 많은 포럼을 읽고 SOF를 확인했지만 해결책을 찾을 수 없었다.

이 내가

facebook = new Facebook(APP_ID); 

이 사람이 좀 도와 주시겠습니까 페이스 북의 객체를 생성하고 방법이다.

답변

2

액세스하려는 사용 권한이 ArrayList이어야합니다. 예를 들어, 변수를 선언 할 때 그것을했을 때. 사용자의 로그인 영역을 구현할 때 다음

private static final String[] PERMISSIONS = { "user_photos" }; 

는 :

if (!facebook.isSessionValid()) { 
    facebook.authorize(this, PERMISSIONS, new LoginDialogListener()); 
} 

희망이 도움이!

+0

답장을 보내 주셔서 감사합니다. 하지만 지금은 오류가'{ "오류": { "메시지": "잘못된 액세스 토큰 AAAEAVpwLuvUBAMeXhXSNPr8TcuUA6DVspgM4ZA9tnJRKfgdvZA6ZAF8g1BZB3xXyzE7MnSh0cA6m1ulO7FgdZCwo9KhbEtc2udXws1wKAmAZDZD access_token은 = AAAEAVpwLuvUBAMeXhXSNPr8TcuUA6DVspgM4ZA9tnJRKfgdvZA6ZAF8g1BZB3xXyzE7MnSh0cA6m1ulO7FgdZCwo9KhbEtc2udXws1wKAmAZDZD?", "유형": "OAuthException", "코드": 190}}'페이스 북의 인스턴스를 만드는 동안 어떤 APP_ID를 제공해야합니까? – namrathu1

+0

@Namratha Facebook 개발자 사이트에서 앱을 만들 때 앱 ID를 부여 받았어야합니다. 이 앱 ID를 사용하여 Facebook 개체를 만듭니다. – RobStemen

+0

@ CreatineDevelopment : 감사합니다. 하지만 여전히 오류가 계속 발생합니다. 나는 SOF [여기] (http://stackoverflow.com/questions/14409685/getting-a-malformed-access-token-t-ypeoauthexception-code190)에서 다른 질문으로 게시했습니다. 도와 줘서 고마워. – namrathu1

2

Facebook SDK 3.0 이상을 사용해야합니다. 또한 FB 사이트의 개발자 설정에서 OAuth 클라이언트 로그인 플로을 사용하도록 설정합니다. 그런 다음 다음과 같은 코드를 사용할 수 있습니다 아직 부여되지 않은 경우 세션 개체를 가져

  1. 먼저, 앱 내부 FB에 사용자가 로그인을 한 후 user_photos에 대한 권한을 요청 :

    // start Facebook Login 
    Session.openActiveSession(this, true, new Session.StatusCallback() { 
    
        // callback when session changes state 
        @Override 
        public void call(Session session, SessionState state, Exception exception) { 
         if (session.isOpened()) { 
          // check for permission to see user photos 
          if (!hasPhotoPermissions()) 
           session.requestNewPublishPermissions(new Session.NewPermissionsRequest(MyActivity.this, "user_photos")); 
    
          else { 
           // photos permission granted, fetch user's albums 
           fetchAlbumsFromFB(session); 
          } 
         } 
        } 
    }); 
    
  2. private boolean hasPhotoPermissions() { 
        Session session = Session.getActiveSession(); 
        return session.getPermissions().contains("user_photos"); 
    } 
    
  3. 앱은 다음 포를 선물 할 것이다 : 여기에 무엇을 hasPhotoPermissions() 방법의 모습입니다 승인을 위해 사용자에게 권한 화면을 표시합니다.

관련 문제