【发布时间】:2011-06-12 16:03:28
【问题描述】:
我创建了一个抽象类 FbActivity,它扩展了 Activity 以使用 Facebook 的 Android 版 SDK 连接到 facebook。类似于以下内容:
public abstract class FbActivity extends Activity {
private static final String APP_ID = "xxxxxxxxxxxxx";
protected Facebook mFacebook;
/*
* Override onCreate to connect to facebook.
*/
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mFacebook = new Facebook(APP_ID);
setFbConnection();
}
我是想让每个FbActivity 实例化他们自己的Facebook 变量,还是应该让Facebook 变量static,这样整个应用程序只有一个变量?或者我应该使用singleton 类型的设置,如下所示...
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (mFacebook == null) {
mFacebook = new Facebook(APP_ID);
}
setFbConnection();
}
如果您对这个确切的问题没有答案,请从 Facebook 变量中抽象出来。什么时候有一个静态变量“更好”(尤其是在这样的继承情况下)?
【问题讨论】:
标签: java android facebook-graph-api