Cocos2d js(Cocos2d x 3.14)在Android上使用deepstream io

时间:2017-06-06 02:57:36

标签: android cocos2d-js deepstream.io cocos2d-x-3.x

有人使用cocos2d js和deepstream io吗?

我尝试使用deepstream客户端js但尝试通过网络连接服务器时似乎失败了(websocket):

这是adb log:

  

06-06 09:43:19.227:D / cocos2d-x调试信息(26288):connectDeepStream   [对象]   PlayerActions.login.request@assets/src/modules/Actions/Player.js:22:13,

     

06-06 09:43:19.232:D / WebSocket.cpp(26288):WebSocket线程启动,   帮助器实例:0x97987760

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:初始记录   等级911

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:Libwebsockets   版本:2.1.0 james@James-Chen.local-v3.4-139-gbdcf7f8

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:编译的IPV6   并启用

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:libev不支持   编译在

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:libuv支持不   编译在

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:线程:每个1   1024 fds

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:mem:platform fd   map:4096字节

     

06-06 09:43:19.237:D / WebSocket.cpp(26288):注意:编译时   OpenSSL支持

     

06-06 09:43:19.247:D / WebSocket.cpp(26288):注意:mem:per-conn:
  376字节+协议rx buf

     

06-06 09:43:19.247:D / WebSocket.cpp(26288):protocol:ws,host:    。* ,端口:3512,路径:deepstream

     

06-06 09:43:19.247:D / WebSocket.cpp(26288):注意:创建Vhost   '默认'

端口-1,1协议,IPv6      

06-06 09:43:19.252:D / WebSocket.cpp(26288):注意:lws_protocol_init

     

06-06 09:43:19.252:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   未处理的websocket事件:32

     

06-06 09:43:19.252:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   未处理的websocket事件:29

     

06-06 09:43:19.257:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   未处理的websocket事件:24

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   onConnectionError,state:0 ...

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   onConnectionClosed,状态:2 ...

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):onConnectionClosed,   WebSocket(0xae824ed0)正在由服务器关闭。

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   onConnectionClosed DONE!

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   未处理的websocket事件:45

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   未处理的websocket事件:33

     

06-06 09:43:19.267:D / WebSocket.cpp(26288):WebSocket(0xae824ed0)   onConnectionClosed,状态:3 ...

     

06-06 09:43:19.282:D / cocos2d-x调试信息(26288):_ onError [object   对象]对象

     

06-06 09:43:19.282:D / cocos2d-x调试信息(26288):[object Object]

     

06-06 09:43:19.282:D / cocos2d-x调试信息(26288):{"输入":"错误"}

     

06-06 09:43:19.287:D / WebSocket.cpp(26288):在析构函数中   WebSocket(0xae824ed0)

     

06-06 09:43:19.287:D / WebSocket.cpp(26288):在加入ws线程之前

     

06-06 09:43:19.292:D / WebSocket.cpp(26288):注意:   lws_context_destroy

     

06-06 09:43:19.292:D / WebSocket.cpp(26288):WebSocket线程退出,   帮助器实例:0x97987760

     <06> 06-06 09:43:19.292:D / WebSocket.cpp(26288):加入ws线程之后

     

06-06 09:43:19.317:D / cocos2d-x调试信息(26288):C connectionError   [object Object] string

     

06-06 09:43:19.317:D / cocos2d-x调试信息(26288):错误:字符串

     

06-06 09:43:19.317:D / cocos2d-x调试信息(26288):[object Object]

     

06-06 09:43:19.317:D / cocos2d-x调试信息(26288):connectionError

     

06-06 09:43:19.317:D / cocos2d-x调试信息(26288):C

我试图记录错误内容,但它只是&#34; {&#34;键入&#34;:&#34;错误&#34;}&#34;

代码很简单。我只启动一个深度服务器,并尝试登录到Android客户端上的服务器(js cocos2d-js)

像这样:

this.client = deepstream(CCDefine.DeepStreamServer).login({username: arg.username, password: arg.password},function(success,data){


cc.log(success,data)

        if(success){
            cc.log('Deep stream connect success')

        }else{
            cc.log('Deep stream connect false')
        }
    })

我发现cocos使用没有libuv的libwebsockets而深度使用它。可以吗?我尝试使用libuv为android编译libwebsockets,但我失败了。

现在我正在使用deepstream java SDK解决这个问题,并建立一个从java到js的桥梁。 谢谢大家。

1 个答案:

答案 0 :(得分:0)

很难说这里的问题是什么,但看起来WebSocket API可能不兼容。 你能尝试在deepstream错误处理程序中记录错误对象的内容吗?如果您可以发布一个很好的小代码示例。