Unity3D中的Socket通信
来源:互联网 发布:淘宝上好吃的蛋糕店 编辑:程序博客网 时间:2024/05/16 08:49
设计为四个部分,第一部分接收发送数据,第二部分本地数据转换为字节发送到服务器包括发送包长度,包头,加密,具体内容等.第三部分接收byte转换为数据.第四部分监听.
第一部分简单示例:连接服务器Ip 端口,发送请求,接收数据同理.
- public static void SocketConnect(string serverIP, int serverPort)
- {
- clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
- IPEndPoint ipe = new IPEndPoint(IPAddress.Parse(serverIP), serverPort);
- try
- {
- clientSocket.Connect(ipe);
- Debug.Log(" Connect Success IP: " + serverIP + " Port : " + serverPort.ToString());
- }
- catch (Exception e)
- {
- Debug.LogError(e.ToString());
- }
- }
- //发送数据
- public static void Send(byte[] bytes)
- {
- if (clientSocket == null)
- return;
- if (!clientSocket.Connected)
- return;
- if (clientSocket.Poll(0, SelectMode.SelectWrite))
- {
- try
- {
- clientSocket.Send(bytes);
- }
- catch (Exception e)
- {
- Debug.LogError(e.ToString());
- }
- }
- }
- public void _MSG_ACCOUNT(string name, string pwd)
- {
- ACCOUNT account = new ACCOUNT();
- datas = new byte[account.length];
- byte[] bytesLength = BitConverter.GetBytes((System.Int16)account.length);
- int length = 0;
- bytesLength.CopyTo(datas, length);
- length += 2;
- byte[] bytesID = BitConverter.GetBytes((System.Int16)account.ID);
- bytesID.CopyTo(datas, length);
- length += 2;
- byte[] bytesName = Encoding.Default.GetBytes(name);
- bytesName.CopyTo(datas, length);
- void _MSG_CONNECT(byte[] datas)
- {
- connect = new CONNECT();
- int length = 4;
- connect.idAccount = BitConverter.ToUInt32(datas, length);
- Debug.LogError("账号ID " + connect.idAccount);
- length += System.Runtime.InteropServices.Marshal.SizeOf(connect.idAccount);
- connect.dwData = BitConverter.ToUInt32(datas, length);
- Debug.LogError("认证ID " + connect.dwData);
- length += System.Runtime.InteropServices.Marshal.SizeOf(connect.dwData);
- connect.nServerIndex = BitConverter.ToUInt32(datas, length);
- Debug.LogError("游戏逻辑服务器索引 " + connect.nServerIndex);
- Unity3D中的Socket通信
- Unity3d中的Tcp socket通信(开源)
- unity3d socket( unity socket )客户端通信插件-在Unity3d中的简易实现网游客户端通信框架
- Unity3D的Socket通信
- Unity3D Socket通信 UDP
- Unity3D Socket通信 TCP
- unity3D与Socket通信_01
- unity3d中的http通信
- unity3d中的http通信
- unity3d中的http通信
- unity3d中的http通信
- unity3d中的http通信
- unity3d中的http通信
- Unity3D中的http通信
- unity3d中的http通信
- Unity3d socket和java socket通信
- Unity3D中的socket通信之九(账号密码/数据传输过程中的加密解密)
- Java中的Socket通信
- 利用dispatch_once创建单例
- IQmath的使用方法
- URL,URI,servletPath,contextPath
- 存款人在哪些情况下应向开户银行提出撤销银行结算账户的申请?
- gearman的YUM安装及PHP应用
- Unity3D中的Socket通信
- Leftmost Digit HDU 1060
- Processes and Threads
- Java中如何遍历Map对象的4种方法
- xFire写webservice的时候出现 Cannot create mapping for java.util.List,
- WINDOWS NATIVE API 前缀含义
- Android 常用代码示例---系统服务
- index.php中定义一些全局变量的用法记录
- java 字符串,字符数组,list间的转化