2015-07-19 32 views
1

让我们说我们有2个活动A和B.A是mainactivity登录到Facebook并使用AccessTokenTracker类跟踪访问令牌。根据文档,系统应该停止在活动A的onDestroy()方法中跟踪令牌。问题是我想在活动B中继续跟踪accessToken。活动B还需要accessToken进行图API调用。如果令牌在活动B中过期,我们如何跟踪它?如何在许多活动中跟踪accessToken facebook

回答

0

如何将它保存在SharedPreferences

SharedPreferences preferences = getSharedPreferences(PREFS_NAME, MODE_PRIVATE); 
preferences.edit().putString(TOKEN, token).apply(); 
+0

@matfred但访问令牌不是字符串。我认为即使我们使用AccessToken.getToken()将其更改为字符串,我们也不能在下一个活动中稍后将其更改为accessToken。 –

0

如果你需要分享您的Acitivities之间的参数,有一对夫妇的方法。辛格尔顿是比较容易的一个一个:

class DataHolder{ 

    private AccessToken ac; 

    void setToken (AccessToken ac) 
     { 
     this.ac = ac; 
     } 

    AccessToken getToken() 
     { 
     return ac; 
     } 

} 

如果您想了解更多详情,请阅读this

+0

我不想将活动中的数据传递给活动。我想要在活动B上跟踪accessToken。如果访问令牌在活动B上到期,我需要跟踪它并获取新的访问令牌。 –