有啥靠谱的 android 的 websocket 库啊?求推荐。另外,android websocket + restify 方案谁玩过?
发布于 6个月前 作者 piginzoo 1788 次浏览

WebSocket对android的支持不太好啊,目前各个浏览器的支持情况: http://caniuse.com/websockets 。Android的4.2+的webkit才支持貌似。

这篇文章的里面推荐用websocket-android-phonegap方案: http://blog.qhm123.com/2012/05/20/android-websocket-chat.html

可是我clone后一用,发现构造函数还需要webview,我不想搞个webview在我的app里面,我就像纯后台的websoket协议支持。

后来看到了http://autobahn.ws/ ,但是我github上的android版本fork的人不多啊。

目前打算去试试另外一个koush/AndroidAsync 了,貌似fork的人还比较多一些。

纠结啊,有经验的说说,推荐一个啊。

另外,后端用的是nodejs+restify,restify支持socket.io,而socketio又是支持websocket的,绕个大圈,所以也顺道问问,这个方案是否靠谱,有坑否?

12 回复

nodejs+restify,restify支持socket.io,而socketio又是支持websocket的 ,好像,这样也可以吧,坐等大神 来回复。

为何不用webview?

@kingapple 我除非放个隐藏的webview,没啥意义,我理解websocket只是协议而已,没必要非要搅合着webview啊

@piginzoo websocket好像挺火,呵呵

移动端可以用mqtt

AndroidAsync 这个好像不错,我们公司安卓用的就是这个。 nodejs socket io 做server。目前为止没什么问题

@lonso ,你们公司的AndroidAysnc我推测使用的Socket.io方式连接的,可是Socket.io升级到1.0后,AndroidAsync貌似就不支持Socektio方式了:https://github.com/koush/AndroidAsync/issues/202

koush commented 13 days ago
Use another library, or reimplement with the new protocol. Unfortunately I do not have the time to do so...

koush就是此项目的作者,他说木有时间,木有时间实现!!!唉

貌似原生的WebSocket确实有不少问题,怪不得一堆人写Webcoket的增强客户端呢?我看了好几个开源项目,大家都不用原生的WebSocket调用自己实现的号称支持WebSocket的服务器,而都推荐用自己的客户端,虽然没有去细看代码,看来真的不太靠谱,这个标准的html5的WebSocket API: http://blog.caplin.com/2010/03/02/why-we-dont-need-html5-websocket/

算了,忍了,还是去找个靠谱的Socket.io的Android库吧,我其实本意是为了要个好用的WebSocket的Android库,可是@lonso 推荐的AndroidAsync只支持到socket.io的0.9,而且websocket方式也是超时(自己测试的结果)。

罢了罢了,重新去找个Android的Socket.IO的客户端了,谁让Socket.io比较成熟呢。

有同样痛楚的同学们欢迎跟帖呻吟

@piginzoo so,我们没有升级到1.0.呵呵

@lonso 嗯,我弄个0.9了,打算也

在降级了socket.io 到0.9后,使用AndroidAsync的socketio方式终于通了,这个蛋疼的过程啊,了解了很多东西

回到顶部