如何通过 Intent 传递 facebook AccessToken 对象

how can I pass facebook AccessToken object by Intent

我正在尝试通过 Intent.putExtra.

将 facebook 的 AccessToken 对象传递给另一个 activity
intent.putExtra("ACCESS_TOKEN", loginResult.getAccessToken());

并尝试在第二个活动中获得它

AccessToken fbAccessToken = (AccessToken)intent.getSerializableExtra("ACCESS_TOKEN_KEY");

它说它不能从 Serializable 转换为 AccessToken,因为它不是可序列化的对象。

我认为是创建可序列化包装器 class,其中包含 AccessToken 字段并按意图传递它。这是做到这一点的好方法还是可以通过什么更好的方法?

如果您已登录,那么在接下来的 activity 中,您可以像这样获取 currentAccessToken:

AccessToken accessToken = AccessToken.getCurrentAccessToken();
if(accessToken==null || accessToken.isExpired()){
    // maybe login again
}

不要忘记添加 FacebookSdk.sdkInitialize(getApplicationContext());在 activity 之前的 setContentView() 方法