unity中实现Socket通讯的问题

一只很low的程序猿 2017-06-05 11:39:17
unity中使用socket类实现无线通讯,调试没有问题,但是在进入building中,一直提示TcpClient存在编译错误,之后就进入不了playmode模式,必须把那个脚本删掉重新编写。代码和调试图如下:

using UnityEngine;
using UnityEngine.UI;
using System;
using System.Text;
using System.Net;
using System.Net.Sockets;

public class SendData : MonoBehaviour
{
public Text Text;
public float offset;
public Camera camera;
public TcpClient client;
public float beforeoffset;


// Use this for initialization
void Start()
{
client = new TcpClient();
try
{
client.Connect(IPAddress.Parse("192.168.1.100"), 137);
}
catch (Exception ex)
{
Debug.Log(ex.Message);
}

}

// Update is called once per frame
void Update()
{
//client.Connect(IPAddress.Parse("192.168.1.100"), 137);
offset = (transform.position.z - camera.transform.position.z) * 1000;//将数值单位转换为mm
if (client.Connected)
{
if ((offset - beforeoffset) > 10 || (beforeoffset - offset) > 10)
{
Client();
}
}

beforeoffset = offset;
sendText();
}

void sendText()
{
Text.text = "Z差值:" + offset;
}

public void Client()
{
string message = Convert.ToString(offset);//将数值转换成字符串进行传输
NetworkStream streamToSever = client.GetStream();//获得客户端的数据流

byte[] buffer = Encoding.Unicode.GetBytes(message);
streamToSever.Write(buffer, 0, buffer.Length);
}
}

...全文
961 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
那是不是用了socket对象之后,获取数据的方式得进行改变了?
yahle 2017-06-08
  • 打赏
  • 举报
回复
请直接用Socket对象,而不是用 TCPClinet对象

2,537

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧