如何在意图中传递Facebook对象



我想实现一个安卓应用程序,一开始需要Facebook登录。当我在主活动中声明 facebook 对象并想在另一个活动中调用 facebook.authored,但我无法将 facebook 对象置于意图中,还有其他方法可以实现这一点吗?

以下是流程:首次打开应用时,将打开一个主活动。然后,它将检查是否设置了访问令牌,如果没有,则启动一个新活动以允许用户登录。在该活动中,有一些登录选项和一个登录按钮。如果用户按下登录按钮,则会调用 facebook api 进行登录。

您可以使用官方 facebook/android 示例中使用的类似方法。
使用会话存储,您可以执行以下操作:

第一个活动:

Facebook facebook = new Facebook("APP_ID");
if (!SessionStore.restore(facebook, this)) {
    // start the other activity for authentication
}

第二项活动:

Facebook facebook = new Facebook("APP_ID");
facebook.authorize(this, new DialogListener() {
    @Override
    public void onComplete(Bundle values) {
        SessionStore.restore(facebook, this)
    }
    ...
});

最新更新