用Unity发送TCP

时间:2015-01-12 21:31:58

标签: android networking tcp unity3d tcpclient

我对Unity很新,但我创建了一个应用程序,只需单击一个按钮就可以向一个非常简单的TCP服务器控制台应用程序发送一条简单的TCP消息。当我在我的电脑上运行时,代码工作得很好,但是当我为Android构建它并通过我的手机测试时,消息无法到达服务器。我做错了吗?简单的TCP交互与android有什么不同吗?这是我的Unity代码:

public Texture btnTexture;
public GUIStyle style;
TcpClient mySocket = new TcpClient();
public NetworkStream theStream;
public String Host = "my_ip_address";
public Int32 Port = 8888;
public bool sent = false;
StreamWriter theWriter;
StreamReader theReader;

void OnGUI()
{
    if (GUI.Button (new Rect ((Screen.width / 2) - Screen.width/4, (Screen.height / 2) - Screen.height/4, 
                              Screen.width/2, Screen.width/2), btnTexture)) 
    {
        if(!sent)
        {
            mySocket = new TcpClient(Host, Port);
            theStream = mySocket.GetStream();
            theWriter = new StreamWriter(theStream);
            theReader = new StreamReader(theStream);
            sent = true;
        }
        theWriter.Write("TCP Message" + " $");
        theWriter.Flush();
        //Application.LoadLevel ("Page1");
    }

}

1 个答案:

答案 0 :(得分:0)

从您发布的日期看,回答它可能为时已晚。但是,我遇到了一些熟悉的问题但是使用iOS。我希望这对那些后来会搜索它的人有所帮助。

我建议您深入了解用于连接TCP连接的库。对于我的问题,原因来自TCP库正在使用的解析库。解析库是某些iOS没有的东西。