首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Unity Pomelo广播消息有时收不到

Unity Pomelo广播消息有时收不到
EN

Stack Overflow用户
提问于 2014-11-17 18:06:16
回答 1查看 484关注 0票数 0

我们在我们的游戏中使用了Pomelo来建立网络。Unity客户端注册了一些广播事件,在极少数情况下,unity客户端接收不到广播消息。但是消息是从服务器广播的。

我尝试将日志放在PomeloClient的SocketMessage方法中,但没有打印日志。如果任何人对这个问题有任何线索或建议,请回复。

代码语言:javascript
复制
/// <summary>
    /// When message from server comes, it invoke.
    /// </summary>
    /// <param name='sender'>
    /// Sender.
    /// </param>
    /// <param name='e'>
    /// E.
    /// </param>
    private void SocketMessage (object sender, MessageEventArgs e) {
        UnityEngine.Debug.Log("Unfiltered Message from  server :" + e.Message);

        if ( e!= null && e.Message.Event == "message") {
            string msg = e.Message.MessageText;
            if (msg.IndexOf(ARRAY_FLAG) == 0) {
                this.processMessageBatch(msg);
            } else {
                this.processMessage(msg);
            }
        }
    }
EN

回答 1

Stack Overflow用户

发布于 2015-08-26 16:46:40

尝试:https://github.com/kaistseo/UnitySocketIO-WebSocketSharp

使用websocket-sharp代替WebSocket4Net的UnitySocketIO

UnitySocketIO是unity3d的唯一可用的socket.io客户端,但它使用WebSocket4Net和SuperSocket.ClientEngine作为底层库,这两个库有一定的缺陷和不稳定。有时,即使客户端已从服务器接收到消息包,也不会调用MessageReceived事件处理程序,消息会被静默丢弃。当UnitySocketIO使用的WebSocket4Net库被websocket-sharp取代时,这个问题就解决了。UnitySocketIO使用的SimpleJson库已更新到最新版本(v0.30.0),因为旧的库在某些情况下会导致崩溃。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26970135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档