我在 1 个活动中有此代码:
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);
if(access_token != null) {
facebook.setAccessToken(access_token);
}
if(expires != 0) {
facebook.setAccessExpires(expires);
}
if(!facebook.isSessionValid()) {
Log.e("Facebook Session","Invalid");
//do facebook authorize...
}
else
{
Log.e("Facebook Session","valid");
Intent nextActivity = new Intent (MainActivity.this, FacebookFriendsListActivity.class);
MainActivity.this.startActivity(nextActivity);
}
确实如此,将会话显示为“有效”并开始新活动,但在新活动中我使用完全相同的代码,尽管从 SharedPreferance 返回的数据为空。另一个活动是ListActivity
如果它有什么不同的话。
这是第二个活动中的代码:
Log.e("Login","entered func");
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);
if(access_token != null) {
Log.e("acces_token","Isn't null");
facebook.setAccessToken(access_token);
}
if(expires != 0) {
Log.e("expires","Isn't null");
facebook.setAccessExpires(expires);
}
正如您可能猜到的那样,除了显示正在输入方法的日志之外,还没有创建任何日志。帮助任何人都可以帮助我解决这个奇怪的问题吗?