Cordova 有没有办法将client socket.io.js与phonegap捆绑在一起?

Cordova 有没有办法将client socket.io.js与phonegap捆绑在一起?,cordova,socket.io,Cordova,Socket.io,我已将一个网站转换为phonegap应用程序。它基本上都可以工作,除了socket.io在客户端(我的例子中是Android)上不再工作之外。 我正在使用socket.iov.1.0和nodejs服务器 正常的网站版本运行良好,phonegap应用程序仅在我从服务器获取socket.io.js时运行良好,在我的例子中,我在index.html中使用了这一点: <!-- this seems to be the only working way for phonegap...--> &

我已将一个网站转换为phonegap应用程序。它基本上都可以工作,除了socket.io在客户端(我的例子中是Android)上不再工作之外。 我正在使用socket.iov.1.0和nodejs服务器

正常的网站版本运行良好,phonegap应用程序仅在我从服务器获取socket.io.js时运行良好,在我的例子中,我在index.html中使用了这一点:

<!-- this seems to be the only working way for phonegap...-->
<script type="text/javascript" src="http://192.168.0.11:3000/socket.io/socket.io.js"></script>
引用错误:未定义io


有人有办法将socket.io客户端js打包到phonegap中吗?或者至少是对这种行为的解释?

让我猜猜。第一个HTML文件(index.HTML)位于哪里?如果文件位于Web服务器上,则所有后续请求都将以Web服务器地址作为前缀,即
http://yourWebServer/sourcfile
。您可以尝试使用文件协议吗,即
file://assets/www/js/libs/socket.io.js
。您将需要启用CORS。我希望它能工作。这些文件都在phonegap的www文件夹中,使用phonegap 3.4。当我启动phonegap应用程序时,nodejs服务器不会记录任何文件获取。i、 我很确定它是从phonegap中的文件中获取index.html的。或者我必须为phonegap指定file://吗?如果index.html文件在电话中,则
src=“js/libs/socket.io.js”
应该可以工作。你能把代码片段放在出错的地方吗?。我对socket.io没有太多经验。我希望您已经下载了libs目录中与socket.io library相关的所有库文件。嗨,Frank,我已经编辑了这个问题。“io”对象应该由socket.io.js.hi Frei提供,您在帖子中提到,您已经为
socket.io.js
做了一个
wget
。这是否意味着有一个/only
socket.io.js
文件复制到js/lib目录。如果是,那么它将不起作用。您需要从中复制整个(包括子目录)
socket.io
库。
<script type="text/javascript" src="js/libs/socket.io.js"></script>
$(function(){
  socket = io('http://192.168.0.11:3000');
  ....