0

我基本上是在尝试在一个活动(登录活动)中启动 Socket.IO 连接,并在其他各种活动中进行。如果有人对在这种情况下最有效的方法有任何想法,那就太好了。我所需要的可能只是一项可以在后台运行的服务,但我无法弄清楚它是如何工作的。我试过这样做,但这不起作用。

public class KlassAttack extends Application {
    Socket gameConnection;
    @Override
    public void onCreate() {
        try {gameConnection = IO.socket("http://71.13.36.124:56543");}catch(URISyntaxException e){}
        gameConnection.connect();
        Log.e("TEST", "EEE");
    }
}
4

1 回答 1

0

你可以做一个单例类

public class SocketIOClient {

private static Socket mSocket;

private static void initSocket(Activity activity) {
    try {
       mSocket = IO.socket(Constants.CHAT_SOCKET_URL);
    } catch (URISyntaxException e) {
        e.printStackTrace();
        throw new RuntimeException(e);
    }
}

public static Socket getInstance(Activity activity) {
    if (mSocket != null) {
        return mSocket;
    } else {
        initSocket(activity);
        return mSocket;
    }
} }
于 2015-06-12T19:52:38.260 回答