我有两个活动,即 MainActivity 和 Menu。我使用我的主要活动成功登录到 facebook,并在那里设置了必要的登录流程。但是我希望能够在菜单活动中使用会话和状态。因此,为此,我使用了 Intent 和 putExtra 将会话发送到菜单活动,但是我不确定如何在那里使用该会话。
这是我的 MainActivity(这是我有登录逻辑并将会话发送到菜单的地方):
public class MainActivity extends Activity {
....some more login logic is here....
private void onSessionStateChange(Session session, SessionState state,
Exception exception) {
if (session != currentSession) {
return;
}
if ((session != null && session.isOpened())) {
finish();
Intent menu = new Intent(getApplicationContext(), Menu.class);
menu.putExtra("facebookSession", session);
startActivity(menu);
} else if (state.isClosed()) {
}
}
}
这是菜单活动(我收到通过 Intent 发送的会话):
public class Menu extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
Bundle extras = getIntent().getExtras();
if (extras != null) {
Session.setActiveSession((Session) extras.getSerializable("facebookSession"));
}
}
}
现在,我如何使用这个传递的会话来说“注销用户”我想在单击注销按钮时尝试在菜单活动中执行此操作:
logout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Log user out by using session i got from MainActivity
if (currentSession != null) {
currentSession.closeAndClearTokenInformation();
}
}
});
谢谢您的帮助。