江小鱼
江小鱼
  • 发布:2015-12-17 02:24
  • 更新:2016-09-13 17:57
  • 阅读:2490

websocket貌似可以用啊 真机也测试了

分类:MUI

自己写的 server 端 小测试

2015-12-17 02:24 负责人:无 分享
已邀请:
maq

maq

有人说过不能用吗?能说一下吗?我也在用这个,怕藏着什么坑。

MoGaven

MoGaven

在IOS上连接容易断掉,无法像安卓上保持持久化连接

maq

maq

> 在IOS上连接容易断掉,无法像安卓上保持持久化连接

这还真是个问题。头疼 :(

  • 江小鱼 (作者)

    我在真机上测试了没有像你说的自动断开的问题,有人说websocket在webview之间不会传递消息 不会共用一个 socket = new websocket(...);

    也有人说不可以持久使用....


    2015-12-17 12:50

  • maq

    webview 之间肯定不会共用一个 socket 对象的,因为每个 webview 里的 js 都是自己独立的上下文,它们之间基本上就像是平行宇宙之间的关系。


    至于会不会自动断开,如果 app 一直保持在前台,应该不会有问题(除非网络本身有问题),但如果 app 被切换到后台,就要看系统的调度策略了。我也没有直接的经验,既然不少人反映 iOS 下切到后台会断线,想必是 iOS 优化得比较狠吧,后台的 app 直接冻结了,要不然苹果手机为啥那么省电呢,hehe


    2015-12-17 15:59

  • 江小鱼 (作者)

    回复 maq:所以要用到自定义事件 有一个主webview不会关闭的 向次webview传送事件 从而达到了效果


    2015-12-17 22:20

  • maq

    回复 江小鱼:

    可能我们说的是两件不同的事情。webview 关闭不关闭,是程序自己的事情,即使不是“主webview”,我也可以让它一直不关闭。我说的是 app 被切换到系统后台,这时操作系统有可能把这个 app 冻结了(具体概念我也不是很清楚,这里只是一个形象的说法),程序没有执行的机会了,只有等系统什么时候给解冻(比如再次切换到前台)才能恢复执行,这期间的通信就处于中断状态了。


    2015-12-18 09:23

HTML5寻路者

HTML5寻路者

没有这个问题,容易断掉你可以客户端轮询服务端,保持连接状态

大冬

大冬 - 源自相同起点,演绎不同人生!

搞个心跳就ok

l***@huilan-online.com

l***@huilan-online.com

楼主能贡献一下代码吗,哈哈,学习一下,论坛互助一下!

y***@126.com

y***@126.com - 技术交流

楼主你好,能否贡献一下代码,我搞这个很久了,一直没法实现 socket的长连接,js总是堵塞线程,其他的啥也干不了

还有个问题,我看楼主问了个问题:
首先感谢 猛先生(http://ask.dcloud.net.cn/article/643) 提供的解决方案,程序本地调试没问题,但打包发布后BAdapter.isEnabled()和BAdapter.startDiscovery()都执行不了!~

BAdapter.isEnabled()和BAdapter.startDiscovery() 这两个函数打包之后,用不了,楼主最后如何解决的!
谢谢

y***@126.com

y***@126.com - 技术交流

已经解决http://ask.dcloud.net.cn/question/22667

该问题目前已经被锁定, 无法添加新回复