如何使用最简单的方法在android中登录facebook

时间:2014-06-17 09:27:03

标签: android facebook facebook-login

我正在构建一个facebook应用程序,我将在其中使用facebook帐户登录,现在我想获取/存储会话变量,并将其用于进一步的目的,例如获取用户的基本信息和其他信息,需要会话变量才能在请求中传递它。 我使用此代码获取会话变量,但它无法正常工作。  请参考我将用于登录的任何教程或代码

   //Setting Face Book Id
     facebook = new Facebook(APP_ID);
     mAsyncRunner = new AsyncFacebookRunner(facebook);
     Session s=facebook.getSession();

1 个答案:

答案 0 :(得分:1)

您可以使用Session.openActiveSession方法。这在Facebook Android SDK的简介中有详细介绍 - https://developers.facebook.com/docs/android/getting-started

您必须通过openActiveSession的回调方法传递接口的实现 - 您可以从那里获取会话对象,并将其存储在稍后使用的位置。

以下示例代码:

属于活动的私有成员变量:

private com.Facebook.Session fbSession;

状态回调接口的实现:

private final class FacebookSessionStatusCallback implements Session.StatusCallback {
    @Override
    public void call(com.Facebook.Session session, com.Facebook.SessionState state, Exception exception) {
        if (session.isOpened()) {
            fbSession = session;
        }
    }
}

在这里,我正在开启一个活跃的会话

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    Session.openActiveSession(this, true, new FacebookSessionStatusCallback());
}