如何在Unity C中使用socketIO发出#

时间:2017-07-27 10:52:14

标签: c# sockets unity3d socket.io

我正在开发一个我希望使用socketIO的Unity项目。我想要一个简单地向我的服务器发送套接字的方法。示例:当我单击它发出的东西时的按钮。

我的代码是:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using SocketIO;

public class SocketIOScript : MonoBehaviour {

    private void Awake() {
        print ("awake");
    }

    public SocketIOComponent socket;

    void Start() {
        StartCoroutine (ConnectToServer ());
        socket.On ("USER_CONNECT", OnUserConnect);
    }

    //this works
    IEnumerator ConnectToServer() {
        yield return new WaitForSeconds (0.5f);
        socket.Emit ("USER_CONNECT");
    }

    //When I call on this from a button etc, the socket gives an NullException
    public void logIn() {
        socket.Emit("something");
    }

    public void OnUserConnect(SocketIOEvent socketIOEvent) {
        print ("USER_CONNECT returned");
    }
}

USER_CONNECT套接字有效,我确认在我的服务器上并做出响应。但是当我调用LogIn方法时,我得到了这个异常: NullReferenceException:未将对象引用设置为对象的实例 SocketIOScript.logIn()(在Assets / SocketIOScript.cs:27)

有人可以解释为什么我的套接字值突然为空并且如何修复它? 谢谢!

0 个答案:

没有答案