Unity下的UDP客户端
Unity下简洁有效的UDP客户端
- 前言
- 代码
- 资源
- 其他
- 中文乱码问题
前言
本来就想从网上找一个Unity的UDP客户端,百度上试了好多教程,问题百出,让人气不打一处来.
就几行代码的事情,浪费时间.
下面贴代码
ip和port改成服务器的
"connect"是连接时给服务器发送的
"HeartBeat"是心跳包
代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Text;
using System.Net.Sockets;
using System.Net;public class Network : MonoBehaviour
{public UdpClient udp;// Start is called before the first frame updatevoid Start(){udp = new UdpClient();udp.Connect(ip,port);Byte[] sendBytes = Encoding.ASCII.GetBytes("connect");udp.Send(sendBytes, sendBytes.Length);udp.BeginReceive(new AsyncCallback(OnReceived), udp);InvokeRepeating("HeartBeat", 1, 1);}void OnDestroy(){udp.Dispose();}void OnReceived(IAsyncResult result){// this is what had been passed into BeginReceive as the second parameter:UdpClient socket = result.AsyncState as UdpClient;// points towards whoever had sent the message:IPEndPoint source = new IPEndPoint(0, 0);// get the actual message and fill out the source:byte[] message = socket.EndReceive(result, ref source);// do what you'd like with `message` here:string returnData = Encoding.ASCII.GetString(message);Debug.Log("Got this: " + returnData);// schedule the next receive operation once reading is done:socket.BeginReceive(new AsyncCallback(OnReceived), socket);}void HeartBeat(){Byte[] sendBytes = Encoding.ASCII.GetBytes("heartbeat");udp.Send(sendBytes, sendBytes.Length);}
}
资源
带UI的源码下载(free)
其他
中文乱码问题
ASCII 改成 UniCode
Unity下的UDP客户端相关推荐
- [翻译]Reactor Netty参考指南 - 8.UDP客户端
Reactor Netty参考指南目录 原文地址 Reactor Netty提供了易于使用.易于配置的UdpClient.它隐藏了创建UDP客户端所需的大部分Netty的功能,并增加了Reactive ...
- Linux下编写UDP/TCP版本的服务器和客户端的流程
Linux下编写UDP/TCP版本的服务器和客户端的流程 文章目录 Linux下编写UDP/TCP版本的服务器和客户端的流程 一:UDP和TCP的区别 二.UDP编写服务器的步骤 三.UDP编写客户端 ...
- UDP客户端不用绑定吗IP和端口?
2019独角兽企业重金招聘Python工程师标准>>> 书上都是这么说的,UDP客户端不用绑定IP和端口,操作系统会给它自动分配端口.... 但是虽然没有显示绑定,但是操作系统却似乎 ...
- DNS分别在什么情况下使用UDP和TCP?
看到一个题目问的是:DNS分别在什么情况下使用UDP和TCP? 仔细查了一下发现可查询的资料很少,大部分都把DNS所用协议归为UDP了其实不然,DNS同时占用UDP和TCP端口53,这种单个应用协议同 ...
- unity下图灵机器人的使用
unity下图灵机器人的使用 这里json的解析与建立使用的是LitJson.dll 一.机器人建立 首先到图灵机器人的官网http://www.tuling123.com/注册一个号并建立机器人(有 ...
- udp客户端与服务器端模型_客户端-服务器模型
udp客户端与服务器端模型 As mentioned in the previous article, one of the requirements of using PHP on a page i ...
- linux下和嵌入式linux下通过udp接收来自vlc播放器的视频并转发播放
1.最近需要在linux下基于udp写一个应用程序,实现接收vlc播放器发送的视频流,并将接收到的视频流转发到另一个vlc客户端播放.并将这个应用程序交叉编译到ARM上执行测试通过.主机端ip地址:1 ...
- Springboot+Netty搭建UDP客户端
使用Netty+SpringBoot方式可以快速地开发一套基于UDP协议的服务端程序,同样的也可以开发客户端,一般使用UDP都是使用原生的方式,发送消息后就不管不问,也就是不需要确定消息是否收到,这里 ...
- BearPi-HM_Nano开发板WiFi编程开发——UDP客户端
本示例将演示如何在BearPi-HM_Nano开发板上使用socket编程创建UDP客户端,就收客户端消息并回复固定消息. 本案例主要使用了以下几个API完socket编程实验 socket API分 ...
最新文章
- Linux 下 UltraEdit 版本: 16.1.0.18 破解 30 天试用限制
- SpringBoot第二十二篇: 创建含有多module的springboot工程
- 【前沿干货】2020人脸识别最新进展
- Fiddler无法抓取HTTPS的问题,Fiddler证书无法安装终极解决方案,
- js-jQuery对象与dom对象相互转换
- spark入门_Spark技术入门——配置部署、SparkSQL应用
- GCD Game 博弈论-Nim-质因数应用-质因数个数预处理
- hadoop的idea连接配置_idea远程连接hadoop(macOS)
- shell 删除乱码文件
- ejb运行程序_在哪里可以运行EJB?
- 非常精简的Linux线程池实现(一)——使用互斥锁和条件变量
- oracle将字段nullable设为Y,从DB模型中消除NULLable列的选项(为了避免SQL的三值逻辑)?...
- 绝对布局优势_前瞻布局+尖端科技+雄厚资金 恒大解锁造车的“正确姿势”
- 微软“作死”Windows
- opencv库skimage 实现Canny边缘探测算法
- mysql怎么求平均体重_怎样计算平均身高和平均体重
- 4am永远 鼠标按键设置_罗技G502 LIGHTSPEED无线游戏鼠标评测 性能超乎想象
- 移动前端开发和web前端开发的区别
- uncheck关键字
- Synchronized原理(轻量级锁篇)
热门文章
- python中wx模块介绍_python使用wxpython的 wx.aui 进行布局
- C++中数组初始化方法
- Reversing.kr Replace
- 服务器ssl证书副本,SSL证书服务器名称是如何解析的/我可以使用keytools添加其他名称吗?...
- Wideband Direction of Arrival Estimation Based on Multiple Virtual Extension Arrays
- 解决 无法解析名称 NaiveBayes.fit。/i get Undefined variable “NaiveBayes“ or class “NaiveBayes.fit“.
- 网络安全技术 第二章----数据加密与PKI技术(二)
- 在路上——广州一日游
- 计算机数据管理的三个阶段包括,计算机数据管理技术的发展包括三个阶段
- idea 实现接口中方法的快捷键