让Android的WebView支持WebSocket
来源:互联网 发布:hive查询避免数据倾斜 编辑:程序博客网 时间:2024/05/16 10:02
一,背景
这段时间项目上需要整合一系列的网站,由于网站是用python tornado的异步框架,需要用支持WebSocket的浏览器的支持,而比较悲剧的是,Android的内置浏览器居然不支持WebSocket!!!自然内置的WebView也不会有了。
二,原理
三、一点感受:内事不决问百度,外事不决问GOOGLE!元芳,你怎么看?
以下资料来源于http://developer.android.com
http://developer.android.com/reference/android/webkit/WebView.html
这个是WebView的适用场景及概览。
关键技术点:
WebView可以通过注入JavaScript接口对象来实现JS/JAVA之间的相互调用,这个方面也是现在的PhoneGap所使用的注入点,有关PhoneGap方面的资料,有兴趣的可以参看:
http://phonegap.com/
这是一个很好的项目,试图解决移动平台的通用化问题,很有前景。
WebSocket协议简介:http://en.wikipedia.org/wiki/WebSocket(有兴趣可以看看)。来自开源界的对WebSocket的实现已经有很多个版本,我这里选用的是: https://github.com/anismiles/websocket-android-phonegap 的实现
最终我们的主要代码就是:
wv.addJavascriptInterface(new WebSocketFactory(wv), "WebSocketFactory");
注入WebSocketFactory对象,对应的JS重写WebSocket方法,然后就可以实现WebSocket的支持了。
测试的代码抄自:
http://www.websocket.org/echo.html
最终效果:
Sample Code:
http://code.google.com/p/mobile-sample/downloads/detail?name=webview_websocket.rar
对比IOS和Android,IOS的开发成熟度确实要比Android要高,或许大家觉得Android让大家有更多研究的兴趣,但实际上,对于一个产品的开发而言,首先平台,应该是IOS,让IOS首先验证了你的想法,然后再来弄Android的平台。
现在整个移动开发还处于比较混沌的状态,到处都充满了机会!
- 让Android的WebView支持WebSocket
- 让Android的WebView支持WebSocket
- 让ie6也支持websocket
- Ubuntu让Mosquitto支持Websocket
- 让Android的webview支持H5的图片上传,无需原生开发功能
- 让Android中的webview支持页面中的文件上传
- android 让webview支持https 双向认证(SSL)
- android 让webview支持https 双向认证(SSL)
- Android 让WebView完美支持https双向认证(SSL)
- android 让webview支持https 双向认证(SSL)
- Android 让WebView完美支持https双向认证(SSL)
- Android:让WebView支持<input type=”file”…>元素
- Android 让WebView完美支持https双向认证(SSL)
- android 让webview支持https 双向认证(SSL)
- Android:让WebView支持<input type=”file”…>元素
- 如何让服务端同时支持WebSocket和SSL加密的WebSocket(即同时支持ws和wss)?
- spring支持的websocket
- android webview支持webGl的研究
- javaSE split用法,你真懂!!
- 也许、是长大了,再也不会像从前那样单纯的笑了
- Svn中Path is not a working copy directory解决办法
- Silverlight实现查询建模(五) 用户登录
- HTML5 表单属性
- 让Android的WebView支持WebSocket
- IncludeMultipleStrutsConfigurationFiles
- IOS-常用正则表达式
- HTTP 错误 500.21 - Internal Server Error PageHandlerFactory-Integrated
- 软驱导致 windows 7 安装过程变慢
- poj 1330 Nearest Common Ancestors(LCA)
- Xen Event Channel
- 伤感日志:但我的结局是不幸福的
- centos 开启 关闭 ping(icmp) 响应