Skip to content

Commit b354b7c

Browse files
committed
readme en
1 parent dd20ba7 commit b354b7c

File tree

1 file changed

+129
-0
lines changed

1 file changed

+129
-0
lines changed

README_EN.md

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
2+
[(English)](README_EN.md)
3+
4+
## Demo 线上测试地址
5+
- [http://39.105.150.229/UnityWebSocketDemo/](http://39.105.150.229/UnityWebSocketDemo/)
6+
7+
## UnityWebSocket 使用
8+
9+
### 1. [最新版本下载](https://github.com/y85171642/UnityWebSocket/releases)
10+
11+
### 2. 使用方法:
12+
13+
14+
- 在 Unity 中导入 UnityWebSocket.unitypackage
15+
16+
需要 Scripting Runtime Version = .Net 4.x
17+
18+
需要 WebGL LinkerTarger = asm.js or Both
19+
20+
- 使用 WebSocket
21+
22+
```csharp
23+
// 命名空间
24+
using UnityWebSocket;
25+
using UnityWebSocket.Synchronized;
26+
27+
// 创建实例
28+
WebSocket scoket = new WebSocket();
29+
30+
// 注册回调
31+
scoket.OnOpen += OnOpen;
32+
scoket.OnClose += OnClose;
33+
scoket.OnMessage += OnMessage;
34+
socket.OnError += OnError;
35+
36+
// 连接
37+
string address = "ws://echo.websocket.org";
38+
socket.ConnectAsync(address);
39+
40+
// 发送数据(两种发送方式)
41+
socket.SendAsync(str); // 发送类型 String 类型数据
42+
socket.SendAsync(bytes); // 发送 byte[] 类型数据
43+
44+
// 关闭连接
45+
socket.CloseAsync();
46+
```
47+
48+
- 详细使用方法可参考项目中的 [Example](UnityWebSocket/Assets/Scripts/Plugins/UnityWebSocket/Example/TestWebSocket.cs) 示例代码。
49+
50+
### 3. 模块说明
51+
- WebSocket.jslib
52+
语法格式需要遵循 [asm.js](http://www.ruanyifeng.com/blog/2017/09/asmjs_emscripten.html)
53+
54+
路径:Plugins/WebSocketJS/WebSocketJS.jslib
55+
作用:Unity发布WebGL版本会将其加入到js运行库中。
56+
57+
- WebSocket.cs
58+
59+
作用:WebSocket连接,可同时创建多个不同连接。
60+
已经支持全平台使用。
61+
62+
- WebSocketReceiver.cs
63+
64+
作用:与jslib交互,负责收发多个WebSocket消息。
65+
该脚本在使用WebSocket时会自动加载到场景中,并添加到DonDestroyOnLoad。
66+
67+
- Example场景
68+
69+
作用:WebSocket的使用方法示例。
70+
71+
### 4. 注意(Warning)
72+
- Unity2018 以上版本需要修改WebGL平台 Publishing Settings -> Linker Target 为 asm.js 或 Both。
73+
- 插件中多个命名空间中存在 **WebSocket** 类,适用不同环境。
74+
75+
命名空间 | 平台 | 方式 | 说明
76+
-|-|-|-
77+
UnityWebSocket.Synchronized | 全平台 | 同步(无阻塞) | **[推荐]** 无需考虑异步回调使用 Unity 组件的问题。
78+
UnityWebSocket.Uniform | 全平台 | 异步 | 需要考虑异步回调使用 Unity 组件的问题。
79+
UnityWebSocket.WebGL | WebGL平台 | 异步 | 仅支持WebGL平台下的通信。
80+
UnityWebSocket.NoWebGL | 非WebGL平台 | 异步 | 仅支持非WebGL平台下的通信。
81+
82+
### 5. WebSocket服务器
83+
- 使用官方提供的 Echo Test 服务器。参考 [Echo Test](http://www.websocket.org/echo.html)
84+
85+
### 6. 版本记录
86+
87+
#### v2.0
88+
- 移除 websocket-sharp 插件,使用 .Net 4.x 内置的 ClientWebSocket 作为非 WebGL 平台下 WebSocket 插件。
89+
- 添加**同步方式**的WebSocket ,使用者不必再考虑**异步回调**中使用 Unity 组件的问题。
90+
91+
#### v1.3.2
92+
- 修复 非ssl连接,使用sslConfiguration bug。
93+
94+
#### v1.3.1
95+
- 修复 Tls error,添加默认协议 Tls,Tls11,Tls12。
96+
97+
#### v1.3
98+
- 移除服务器Demo,改用 [websocket-sharp](http://www.websocket.org/echo.html) 官方提供的测试服务器。
99+
- 添加 PlayerSetting -> Linker Target 属性检测。
100+
101+
#### v1.2.2 - pre
102+
- support for wss(ssl) 支持SSL协议格式(更新了websocket-sharp源码)。
103+
- 服务器Demo尚未支持 SSL。会在未来版本支持。
104+
105+
#### v1.2.1
106+
- fix 非WebGL平台打包兼容BUG(屏蔽websocket-jslib部分代码)。
107+
108+
#### v1.2
109+
- 重构代码,规范代码,模块整理。
110+
- 规范接口,参考websocket-sharp结构,使用EventHandler方式处理事件。
111+
- 添加了字符串数据收发的支持。
112+
- jslib中添加了获取socket.readyState的方法。
113+
- jslib中的SendMessage参数整理。
114+
- fix some Bugs.
115+
116+
#### v1.1
117+
- 多平台支持,使用websocket-sharp 开源插件。
118+
- 完善项目命名空间,目录结构。
119+
- WebSocket增加异步连接发送方法。(webgl平台下仍调用同步方式)
120+
- 添加开发分支,git管理方式调整。
121+
122+
#### v1.0
123+
- 支持单客户端同时创建多个不同WebSocket链接。
124+
- 添加OnError错误回调。错误码对应错误原因,参考jslib文件。
125+
- 删除Alert功能(与WebSocket无关,按需求自行添加即可)。
126+
- Close Event Code 作为链接断开错误信息处理。
127+
- jslib 内容完善,增加Map管理websocket实例。
128+
- 修改 State 枚举对应到WebSocket ReadyState。
129+
- 添加 Release Demo Build 文件。

0 commit comments

Comments
 (0)