android - 不发送 4KB 消息的 Android 浏览器的替代服务器推送/ cometd 实现?

标签 android websocket comet server-push http-streaming

我正在开发一个 Web 应用程序,它使用 Comet Hidden iFrame 技术将数据从服务器推送到移动浏览器。

在 Mobile Safari 上一切正常,但在 Android 上要痛苦得多。似乎需要从服务器发送 4 KB 的消息才能考虑该消息。这不仅适用于第一条消息,而且适用于每条消息。

有些人尝试使用 XMLHttpRequest 流实现 Comet,但有同样的 4KB 问题 (http://code.google.com/p/android/issues/detail?id=13044)

有没有人设法在 Android 浏览器上实现 Comet 技术而不需要将消息填充到 4KB?

在 Android 2.1,2.2 上测试

即使在 Android 4.0 版本上似乎也不支持服务器发送的事件 http://caniuse.com/eventsource

同样适用于 websocket http://caniuse.com/websockets

谢谢

-seb

最佳答案

不确定它是否有资格作为您当前问题的答案,但一般建议是使用一种面向 future 的技术,该技术可以回退到相当好的 polyfill .

对于您的具体问题,我相信 WebSockets 是最好的技术,结合 WebSocket 服务器(node.js,Kaazing),具有良好的回退选项。我更熟悉 Kaazing:它在不兼容 WebSocket 的浏览器上提供的性能几乎与 native WebSocket 性能相同。 有关 WebSocket 仿真的更多信息,您可以找到 this post useful on WebSocket emulation .

关于android - 不发送 4KB 消息的 Android 浏览器的替代服务器推送/ cometd 实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8234852/

相关文章:

ios - 为了 iOS 10 的兼容性,websocket 安全需要改变什么

asp.net - COMETchat 应用程序 - IIS 7 随着时间的推移变慢

android - 在 Android 中添加库(不是 jar)

android - 如何从 android 中的媒体记录器获取音频流

android - 如何在 2019 年使用 Windows 10 从 CRT 创建 BKS 文件

websocket - 如何使用websocket进行实时游戏

node.js - 尝试通过 npm 在 NodeJS 中安装 websocket 模块时出错

android - 在 android 上使用 FFmpeg h264 解码器

java - 什么java cometd 式框架最成熟健壮?

mysql - 克服 PHP/MySQL + Ajax/comet/long polling 的方法?