让 Socket.io 在 Android Webview 中工作
Posted
技术标签:
【中文标题】让 Socket.io 在 Android Webview 中工作【英文标题】:Getting Socket.io to work in Android Webview 【发布时间】:2013-05-06 20:00:52 【问题描述】:我正在尝试在 android Webview 的原生 Android 应用程序中使用 socket.io。 Android 活动文件已更新为;
webView.getSettings().setjavascriptEnabled(true);
webView.setWebChromeClient(new WebChromeClient());
webView.loadUrl("file:///android_asset/www/public/index.html");
我的问题是从 index.html 加载 socket.io.js 库:
<script src="http://mydomain:port/socket.io/socket.io.js"></script>
我在渲染 webview 时遇到的错误是:
XMLHttpRequest cannot load http://mydomain:port/socket.io... Origin null is not allowed by Access-Control-Allow-Origin.
我正在使用 node.js/express 服务器尝试为库提供服务,并认为我已将其配置为通过设置接受跨域资源共享 (CORS)
res.header('Access-Control-Allow-Origin', "*");
现在我完全被卡住了!任何人都可以推荐一种让 socket.io 在这种配置下工作的方法吗?
干杯,
柯布斯
【问题讨论】:
【参考方案1】:为什么不在活动中运行 service socket.io,试试我的答案
singleton service socket.io
我使用来自 github 的 socket-io.java 客户端库
Gottox
【讨论】:
以上是关于让 Socket.io 在 Android Webview 中工作的主要内容,如果未能解决你的问题,请参考以下文章