!!!轉載注明:http://www.cnblogs.com/yinlong1991/p/unity_ylwebsocket.html
Unity WebSocket 使用
Demo 線上測試地址
UnityWebSocket 使用
1. UnityWebSocket。
2. 使用Unity導入package。
-
WebSocket.jslib
路徑:Plugins/WebSocketJS/WebSocketJS.jslib 作用:Unity發布WebGL版本會將其加入到js運行庫中。 -
WebSocket.cs
作用:作為一個WebSocket連接。 -
WebSocketReceiver.cs
作用:與jslib交互,負責收發多個WebSocket消息。 注意:該腳本必須掛在場景中作為根節點, 且名為WebSocketReceiver的GameObject上, 這樣才能接收到jslib通過SendMessage方式發來消息 !!! -
Demo場景
作用:WebSocket的使用方法示例。
3. 使用方法:
- 創建WebSocket實例
// 創建實例
string address = "ws://127.0.0.1:8730/test";
WebSocket scoket = new WebSocket(address);
// 注冊回調
scoket.onOpen += OnOpen;
scoket.onClose += OnClose;
scoket.onReceive += OnReceive;
// 連接
socket.Connect();
// 發送數據
socket.Send(data);//發送數據類型byte[]
// 關閉連接
socket.Close();
4. 發布
-
需要將Unity項目切換為WebGL平台,並Build。
-
將生成好的項目文件發布至Tomcat,啟動Tomcat,在瀏覽器中打開相應鏈接路徑。(例如:http://127.0.0.1/UnityWebSocketDemo/ )
5. WebSocket服務器
-
項目發布完成后,需要一個WebSocket服務器收發消息,以下是Demo版本對應的服務器。
-
提供簡單的WebSocket消息收發
-
使用了開源項目 websocket-sharp
6. 再次提醒
注意:WebSocketReceiver 腳本必須掛在場景中作為根節點,
且名為 WebSocketReceiver 的 GameObject 上,
這樣才能接收到 jslib 通過 SendMessage 方式發來消息 !!!
