在线示例
快速开始
安装环境
Unity 2018.3 或更高。
无其他SDK依赖。
安装方法
通过 OpenUPM 安装
openupm add com.psygame.unitywebsocket
通过 Git 安装
在您的项目根路径的 Packages 文件夹中找到 manifest.json 文件,参考如下方式进行修改:
{
"dependencies": {
"com.psygame.unitywebsocket": "https://github.com/psygame/UnityWebSocket.git",
...
},
}
可通过修改链接后缀 #{version} 来安装对应版本。
示例: "com.psygame.unitywebsocket": "https://github.com/psygame/UnityWebSocket.git#2.3.0",
通过 Unity Package 安装
在 Releases 页面中,下载对应版本的 UnityWebSocket.unitypackage 安装包,然后导入到您的项目中。
使用方法
代码示例
// 命名空间
using UnityWebSocket;
// 创建实例
WebSocket scoket = new WebSocket();
// 注册回调
scoket.OnOpen += OnOpen;
scoket.OnClose += OnClose;
scoket.OnMessage += OnMessage;
socket.OnError += OnError;
// 连接
string address = "ws://echo.websocket.org";
socket.ConnectAsync(address);
// 发送数据(两种发送方式)
socket.SendAsync(str); // 发送类型 String 类型数据
socket.SendAsync(bytes); // 发送 byte[] 类型数据
// 关闭连接
socket.CloseAsync();
注意(Warning)
插件中多个命名空间中存在 WebSocket 类,适用不同环境,请根据自身需求选择。
命名空间
平台
方式
说明
UnityWebSocket
全平台
同步(无阻塞)
[推荐] 无需考虑异步回调使用 Unity 组件的问题。
UnityWebSocket.Uniform
全平台
异步
需要考虑异步回调使用 Unity 组件的问题。
UnityWebSocket.WebGL
WebGL平台
异步
仅支持WebGL平台下的通信。
UnityWebSocket.NoWebGL
非WebGL平台
异步
仅支持非WebGL平台下的通信。
QQ 交流群
1126457634 >>> 入群通道 <<<
关于 Unity WebGL 的探索(二)
关于 Unity WebGL 的探索(二) 上一篇博客记录了关于 WebGL 移植的第一步:部分 C/C++ 插件的编译,目前项目中的部分插件使用该方法通过,接下来比较大的一部分工作量是网络模块 We ...
关于 Unity WebGL 的探索(一)
到今天为止,项目已经上线一个多月了,目前稳定运行,各种 bug 也是有的.至少得到了苹果的两次推荐和 TapTap 一次首页推荐,也算是结项后第一时间对我们项目的一个肯定. 出于各种各样的可描述和不可 ...
Unity WebGL 窗口自适应
unity 打包好WebGL后,用文本编辑器编辑打包生成的 index.html 文件 在生成的html里面修改代码
MySQL导入导出实践
最近一次数据迁移,需要将MySQL的数据导出.处理后导入到新表和ES.这里做个简单记录,方便后续查询. 注: 为了写文章方便及隐私安全,实际内容会有所简化.例如表结构简化.数据库连接部分全部用 xxx ...
好系统重装助手教你如何让win10系统快速开机
电脑开机的时候,有一些自动开启的软件或工具会占用一定的开机时间,把它们禁止开机启动项就会提高电脑开机速度.很多人会借助360或者电脑管家等软件来设置,下面小编就来教大家一招不借助第三方工具来禁止win ...
leetcode — palindrome-number
import org.lep.leetcode.parseint.IntegerParser; /** * Source : https://oj.leetcode.com/problems/pali ...
ecplise中创建jsp页面时默认的编码格式为ISO-8859-1,这里我们将其编码格式设置为utf-8
我们在创建jsp页面时,默认的编码格式为ISO-8859-1,我们如果想要将其改为utf-8还要自己手动去更改. 因此可以设置Jsp默认的编码为utf-8,具体步骤如下: 启动Eclipse,点击菜单 ...
async和await理解代码
<1>:Async和Await的理解1 using System; using System.Collections.Generic; using System.Linq; using S ...