3
我創建一個全球的Facebook對象(從Android的Facebook的SDK),以便能夠在我的活動分享:在Android活動共享全球的Facebook對象
public class GlobalVars extends Application {
public static final String APP_ID = "123456789";
public Facebook facebook = new Facebook(APP_ID);
}
的活動之一,我添加LoginButton,如圖所示的例子:
public class FacebookActivity extends Activity {
private LoginButton mLoginButton;
private Facebook mFacebook;
private AsyncFacebookRunner mAsyncRunner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mFacebook = ((GlobalVars)getApplicationContext()).facebook;
setContentView(R.layout.facebook);
mLoginButton = (LoginButton) findViewById(R.id.login);
mText = (TextView) FacebookActivity.this.findViewById(R.id.txt);
mAsyncRunner = new AsyncFacebookRunner(mFacebook);
SessionStore.restore(mFacebook, this);
SessionEvents.addAuthListener(new SampleAuthListener());
SessionEvents.addLogoutListener(new SampleLogoutListener());
mLoginButton.init(this, mFacebook);
}
...
}
現在,當我登錄並使用同一個Facebook對象到另一個活動:
public class MainActivity extends WhipemActivity {
private Facebook mFacebook;
private AsyncFacebookRunner mAsyncRunner;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mFacebook = ((GlobalVars)getApplicationContext()).facebook;
}
....
}
和運行,如要求:
mAsyncRunner = new AsyncFacebookRunner(mFacebook);
mAsyncRunner.request("me/friends", new FriendRequestListener());
我得到一個
Facebook Error: Error validating access token.
有什麼不對?是擁有全球Facebook對象的正確方法嗎?
謝謝。
這很好,但你將如何保存.. mFacebook另一個活動...? – 2012-07-12 09:13:01