그래서 "share"버튼이있는 Dialog
이 있습니다. 버튼을 누르면 이미 Facebook에 로그인되어있는 경우 사용자 정보를 공유하는 메소드가 호출됩니다. 그러나 Facebook에 로그인하지 않은 경우 먼저 사용자가 로그인하여 정보를 공유 할 수 있도록하고 싶습니다.로그인을 위해 Facebook 세션을 만드는 올바른 방법은 무엇입니까?
Session.OpenRequest openRequest = new Session.OpenRequest(GameActivity.this);
StatusCallback callback = new StatusCallback(){
@Override
public void call(Session session, SessionState state, Exception exception) {
Log.d(TAG, "CALL");
if (Session.getActiveSession() != null && Session.getActiveSession().isOpened()){
Log.d(TAG, "sendBrag was called");
sendBrag();
}else{
Log.d(TAG, "session is not opened");
}
if (exception != null){
Log.d(TAG, "caught exception in call method");
}
}
};
openRequest.setCallback(callback);
openRequest.setDefaultAudience(SessionDefaultAudience.FRIENDS);
openRequest.setPermissions(PERMISSIONS);
Session session = new Session(GameActivity.this);
session.openForPublish(openRequest);
Session.setActiveSession(session);
PERMISSIONS
이며, :
private static final List<String> PERMISSIONS = Arrays.asList("publish_actions");
문제는 그것이 결코에 기록되지 여기에 LoginButton
없이 사용자가 로그인 내 시도입니다! 나는 Toast
메시지에 "네트워크 연결 확인"(네트워크 연결 상태가 양호 함에도 불구하고) 메시지가 나타나거나 아무 반응이 없다. 그러나 로그에서 세션이 결코 열리지 않는다고 말할 수 있습니다. 모두 합하면 다음과 같습니다.Session
클래스를 사용하여 페이스 북에 어떻게 제대로 로그인합니까? 내가 여기서 무엇을 놓치고 있니? 도움, 제안 또는 조언을 주시면 대단히 감사하겠습니다.