我正在开发一个应用程序,它有代码,我用FacebookActivity
扩展了我的课程,我想知道OPENED_TOKEN_UPDATED意味着什么以及此部分何时执行
if (state.equals(SessionState.OPENED_TOKEN_UPDATED)) {
//WHEN THIS PORTION WILL EXECUTE
}
Facebook文件不太好。见下面的代码
@Override
protected void onSessionStateChange(SessionState state, Exception exception) {
if (isResumed) { //if its a visible activity
FragmentManager manager = getSupportFragmentManager();
int backStackSize = manager.getBackStackEntryCount(); //get number of entries currently in the back-stack
for (int i = 0; i < backStackSize; i++) {
manager.popBackStack(); //clear fragment back-stack before new fragment is added
}
if (state.isOpened()) {
if (state.equals(SessionState.OPENED_TOKEN_UPDATED)) {
//WHEN THIS PORTION WILL EXECUTE
}else{
//replace fragment on main with promo fragment
FragmentTransaction transaction = manager.beginTransaction();
transaction.replace(R.id.body_frame, fragments[NextFgragment]).commit();
}
} else if (state.isClosed()) {
//replace fragment on main with login fragment
}
}
}
答案 0 :(得分:2)
当您最初打开会话时,它将处于SessionState.OPENED状态。如果您发出重新授权请求,或者令牌被刷新,那么它将处于OPENED_TOKEN_UPDATED状态。
通常,您可以将OPENED和OPENED_TOKEN_UPDATED视为相同,但有时(如果您请求更多权限),您将想知道令牌何时更新。
答案 1 :(得分:1)
您可以暂停此代码
if (state.equals(SessionState.OPENED_TOKEN_UPDATED)) {
//WHEN THIS PORTION WILL EXECUTE
}
答案 2 :(得分:0)
SessionState.OPENED_TOKEN_UPDATED说的文档:
“表示会话已打开且令牌已更改。在此状态下,会话可与请求一起使用。”
代码部分是有用的,如果需要在令牌更改时执行某些操作