我正在使用SmartFoxServer进行多人游戏。当它加载到主聊天室时,我让它工作得很好。在我的应用程序中,你可以创建新的游戏室,当你点击一个房间时,它会启动一个新的活动并进入那个房间。看起来我必须在那之后再次连接到服务器。然后我就已经登录错误了。
如何在整个活动过程中维护smartfox客户端?
发布于 2010-09-26 23:44:30
您可以覆盖应用程序类,并使您的服务器引用一个静态公共变量,该变量可用于任何使用((YourApplication)getApplication()).yourStaticServerReference的活动。
要覆盖Application类,请执行以下步骤:
com.yourpackage.YourApplicationpackage com.yourpackage;import android.app.Application;公共类YourApplication扩展应用{ public static smartFoxServer smartFoxServer;@Override public void (){ SmartFoxServer = initSmartFoxServer();//我不知道SmartFoxServer,所以让我们假设您在应用程序类中的某个地方实现了这一点。//现在,使用((YourApplication)getApplication()).smartFoxServer }}在应用程序清单中,smartFoxServer字段就像一个在所有活动中可见的全局变量。}
如果您经常访问smartFoxServer对象,您甚至可以使用java1.5静态导入功能:
import static com.yourpackage.YourApplication.smartFoxServer;
public Activity myActivity {
public void anyMethod() {
// Thanks to the static import, smartFoxServer is directly accessible, without calling getActivity().
smartFoxServer.doSomething();
}
}我直接在这里写的,所以可能会有一些错误...当孩子们给我超过2分钟的空闲时间时,我会检查更多的细节;-)
https://stackoverflow.com/questions/3798489
复制相似问题